Мазмұны:

VUSBTiny AVR SPI бағдарламашысы: 3 қадам
VUSBTiny AVR SPI бағдарламашысы: 3 қадам

Бейне: VUSBTiny AVR SPI бағдарламашысы: 3 қадам

Бейне: VUSBTiny AVR SPI бағдарламашысы: 3 қадам
Бейне: AVR SPI bus test. 2024, Шілде
Anonim
VUSBTiny AVR SPI бағдарламашысы
VUSBTiny AVR SPI бағдарламашысы

usbtiny isp бағдарламашысын жасап, оны 6 ай бойы қолданғаннан кейін, мен оны алып жүруге арналған басқа біреуін іздедім. маған usbtiny isp дизайнының қарапайымдылығы ұнайды, бірақ оны одан да кішірейтіп, бөлшектерді азырақ алғым келеді. Мен өзгерткім келетін түпнұсқалық дизайндағы бір нәрсе - сағат кристалын пайдалануды жою. Мен тапқан шешімнің бірі-v-usb драйверлері attiny25/45/85 құрылғыларындағы 16.5 МГц ішкі осцилляторды қолдайды. сондықтан мен бұл жобаны бастаймын usbtiny isp usb байланысы үшін v-usb қолданады. бірден пайдасы-бұл кеңістікті үнемдейді және құрамдастардың саны аз болады (кристалдар жоқ). usbtiny сипаттамасы https://www.xs4all.nl/~dicks/avr/usbtiny/ USBtiny-бұл төмен жылдамдықты USB бағдарламалық жасақтамасы. Atmel ATtiny микроконтроллері үшін хаттама. Әрине, ол ATmega сериясында да жұмыс істейтін болады. Бағдарламалық жасақтама 12 МГц жиілігіндегі AVR үшін жазылған. Бұл жиілікте USB шинасының әр биті 8 сағаттық циклды алады, ал көптеген алдамшылықпен USB толқындық формаларын бағдарламалық қамтамасыз ету арқылы декодтауға және кодтауға болады. USB драйверіне конфигурация мен компилятор нұсқасына байланысты шамамен 1250-1350 байт бос орын қажет (қосымша сәйкестендіру жолдарын қоспағанда) және 46 байт жедел жады (стек кеңістігін қоспағанда). C интерфейсі конфигурацияға байланысты 3-тен 5-ке дейінгі функциялардан тұрады. AVR микроконтроллерлері кез келген AVR микроконтроллерімен USB қондырғысын құруға мүмкіндік береді, бұл қосымша чипті қажет етпейді.

1 -қадам: ерекшеліктері мен бөліктері

Бөлшектер мен ерекшеліктер
Бөлшектер мен ерекшеліктер

* usbtiny isp бағдарламалау логикасы, жетілдірілген avr-dude қолдауы * кіші аяқ басу * минималды компоненттер * мақсатты құрылғыға io сызықтары қорғалмағанын ескертеді. Сіз 1k-2k резисторларын SCK және MOSI-ге қосуға және https://www.obdev.at/vusb/ usbtiny isp https://www.xs4all. nl/~ dicks/avr/usbtiny/бөлшектер тізімі * attiny45/85 (85 келу оңайырақ) * 3.6в зенер диодтары (1n747, BZX79,.. 1W түрлерінен аулақ болыңыз) * 68ohm резистор x 2 * 1.5K резистор * мини нан тақтасы 170 нүкте * usb кабелі (долларлық дүкен usb принтер кабелі жақсы) * io желілерін қорғауға арналған 1к/2к резисторлар (қосымша) құралдар қажет * жұмыс істейтін авр бағдарламашысы (иә, бұл аулау22, бізге біреу жасау керек) * жұмыс істейтін авр бағдарламалау ортасы

2 -қадам: Нан тақтасының орналасуы, схемасы және құрылысы

Нан тақтасының орналасуы, схемасы және құрылысы
Нан тақтасының орналасуы, схемасы және құрылысы
Нан тақтасының орналасуы, схемасы және құрылысы
Нан тақтасының орналасуы, схемасы және құрылысы

құрылыс

* нан тақтасының орналасуын қадағалаңыз, бұл мүмкін емес компоненттер, 3 резистор, 2 диод, 1 қақпақ, плюс 8 түйреуіш. * долларлық дүкеннің USB принтерінің кабелін алыңыз, принтердің ұшын кесіңіз, 4 ашық сым болады, оларды бекітіңіз және оларды 4 істікшелі ерлерге бекітіңіз, біз оны тақтаға қосу үшін қолданамыз. орналасу мен түйреуді тағайындау үшін схеманы қараңыз (J1). * диодтың полярлығын қадағалаңыз.

жобаны құру және жандандыру

жоба avr-gcc құралдар тізбегі бар Linux ubuntu түсінікті қорабында салынған. Сізде мұндай орта бар деп ойлайсыз немесе интернеттен оны қалай орнату керектігін біле аласыз. бастапқы кодтар gnu gpl v2 мұрагерлікке лицензияланған.

бастапқы код v-usb ұсынған конвенцияға сәйкес келеді, сіз vusbtiny.tgz бастапқы бумасын жүктей аласыз және оны жобалар каталогына шеше аласыз. сіздің бастапқы каталогыңызда main.c бар, бұл менің өзгертілген usbtiny бағдарламашысының нұсқасы. және v-usb қабатын қамтитын usbdrv ішкі каталогы. оны құру кезінде жоғарыдағы екі жобаның лицензиялау мерзімін сақтаңыз. менің бағдарламашы логикасындағы дереккөзім ледиада нұсқасына емес, Дик Стрифлэнд нұсқасына негізделген (олар бірдей болса да).

тым тізбегі жоқ адамдар үшін келесі екілік файлды қолдануға болады

vusbtiny.hex жүктеу үшін басыңыз

және микробағдарламаны жарқылдату үшін avrdude пайдаланыңыз

avrdude -c usbtiny -p t45 -e -V -U жарқыл: w: usbtiny.hex

(егер сіздің құрылғыңыз кішкентай 85 болса, -p t45 w/ -p t85 ауыстырыңыз)

дереккөзді мына жерден жүктеуге болады vusbtiny.tgz жүктеу үшін басыңыз

бастапқы буманы жұмыс каталогына шығарыңыз

tar -zxvf vusbtiny.tgz

* cus vsubtiny жасаңыз, vusbtiny жұмыс каталогына ауысу үшін * сіз қолданатын чипке сәйкес мақсатты құрылғыға арналған жасалынған файл. яғни PROGRAMMER_MCU = t45 немесе t85 * жасаңыз * сүйікті провайдер бағдарламашысын тіркеңіз * makefile файлын өзгертіңіз және қажет болған жағдайда avrdude параметрлерін өзгертіңіз. қор USBTiny бағдарламашысын қабылдайды. яғни AVRDUDE_PROGRAMMERID = usbtiny * флэш -микробағдарламасы make install арқылы

микробағдарламаны жыпылықтағаннан кейін біз сақтандырғышты дұрыс орнатуымыз керек, біз бұл жобада 1 -ші нүктені қалпына келтіруді io ретінде қолданамыз

* ppl сағаты usb уақытына v-usb қабатының талап етуі бойынша пайдаланылады * қалпына келтіру түйреуіші өшірілген, себебі оны io ретінде пайдалану керек

avrdude -c usbtiny -p t45 -V -U lfuse: w: 0xe1: m -U hfuse: w: 0x5d: m -U efuse: w: 0xff: m

бұл параметр 5V SPI арқылы одан әрі бағдарламалауды өшіреді, себебі бізге io үшін RESET pin (pin1) қажет. сақтандырғышты қалпына келтіру үшін сізге HVSP бағдарламашысына кіру қажет болады.

3 -қадам: Қолдану және қолдану

Қолданылуы мен қолданылуы
Қолданылуы мен қолданылуы
Қолданылуы мен қолданылуы
Қолданылуы мен қолданылуы
Қолданылуы мен қолданылуы
Қолданылуы мен қолданылуы

тікелей тақтада жыпылықтайды

егер сіз 8 істікшелі AVR құрылғыларын жарқылдату үшін vusbtiny қолдансаңыз, сіз мақсатты құрылғыны бағдарламашы құрылғысының үстіне баса аласыз. бағдарламашы түйреуіштер мақсатқа сәйкес келетін етіп жасалған. бір амал бар, бірақ сіз компьютерге қосылатын USB D+ және D-түйрегіштері болғандықтан, mcu бағдарламашысының 2 және 3 түйреуіштерін бөліп алуыңыз керек. Мен бұған жету үшін скотч таспасын қолданамын, оны фотолардан көруге болады. төменде - tiny45 -те микробағдарламаны қабылдауға дайын кішкентай 13В «мініп» жүру.

Өткізгіш арқылы провайдер жыпылықтайды

провайдер арқылы мақсатты тізбекті бағдарламалау үшін (жүйелік бағдарламалау) сізге Интернет-провайдер кабелі қажет. мұнда мен стандартты 2x3 немесе 2x5 істікшелі тақырыптарды қолданбаймын. оның орнына мен нанға ыңғайлы 1x6 секіргішті қолданамын, сіз 2x3 немесе 2x5 істікшелі тақырыпты тақтаның орналасуы мен схемасында көрсетілгендей J2 -ге салыстыру арқылы жасай аласыз. келесі фотосуретте провайдер арқылы жыпылықтауға дайын кішкентай 2313 бейнеленген.

ақаулық себебін іздеу және түзету

* микробағдарламаны жыпылықтау мүмкін емес пе? түпнұсқалық бағдарламашыңызды тексеріңіз, avrdude -B белгісі арқылы уақытты реттеу қажет болуы мүмкін. 1 -ші чипті оқуға тырысыңыз, нашар сақтандырғыш болуы мүмкін, сіздің чипке сыртқы сағаттық сигнал қажет болуы мүмкін. Сізге чипті әдепкі 1 -ші деңгейге қайтару қажет болуы мүмкін. * қосылымдарды тексеру * егер әр түрлі ио түйреуіштерін, кодты және қосылымдарды тексерсеңіз * сіз 500 мВт, 400 мВт түріндегі зенер диодтарын алмастыра аласыз * сіз R3 мәнін 1,2 К немесе одан төменге дейін төмендетуге тырыса аласыз * сізде уақыт мәселесі жиі кездеседі. -Avrdude жалауы, қысқа USB кабелі бар, бәрі көмектеседі

Ұсынылған: