Quartus, USB-blaster та Ubuntu 13.04
Років десять тому була задумка з підручних матеріалів (мікросхем, які однак завжди є у шафці) зробити спеціалізоване «щось схоже на логаналізатор» — запис з мітками часу прийнятого з двох каналів UART, кількох цифрових входів з дискретністю в десяток мікросекунд та пари аналогових входів з дискретністю в сотню мікросекунд.
На платі ATmega64, FT245, мікросхема статичної пам’яті 512Kx8 та між ними мостом EPM240. Ця альтеринка повинна була сама писати у буферну пам’ять цифрові входи при зміні їх стану, а також супроводжувати міткою часу записи від мікроконтролера (UART-и та аналогові входи) а також бути «DMA-каналом» для FT245.
Але змінилися задачі, змінилася робота, … Через кілька років по виготовленні плат парочку навіть було запаяно, але далі справа не пішла.
Заманулося таки хоч якось запустити цю стару плату, хоча б для тестування змін у scmRTOS 🙂
Знайшов у себе в завалах якийсь Квартус 9.1 (free-шна версія для Linux). Поставив. Поруч в архівах лежали рекомендовані для роботи з USB-blaster файли 51-usbblaster.rules
(записувати у каталог /etc/udev/rules.d
)
#
SUBSYSTEM=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6001|6002|6003",\
OWNER="root", GROUP="root", MODE="0666", SYMLINK+="usbblaster"
та рядки, що їх треба додати до файлу /etc/rc.local
mount --bind /dev/bus /proc/bus
ln -s /sys/kernel/debug/usb/devices /proc/bus/usb/devices
#
«Вмикаю — не працює». На деякий час програматор квартуса задумався, потім сказав, що не знайшов нічого, що його могло б зацікавити. Пробую cat /sys/kernel/debug/usb/devices
, а воно мене не пускає. О, дивлюся далі.
drwx------ 22 root root 0 лис 19 08:58 debug
При тому, що
drwxr-xr-x 3 root root 0 лис 19 08:58 usb
Тобто доступ на читання до підкаталогу usb
є, так само до всіх інших у debug
, поруч лежать файли з правами 444.
Отже, все, що лежить у debug
— дозволено читати всім. Тому не став гаяти часу, зробив просто
Програматор квартуса побачив мій усб-бластер, тепер, може, щось і зроблю.