- Избор алата за развој хардвера и софтвера
- СТМ8С103Ф3П6 Развој
- СТМ8С103Ф3П6 програмер
- СТМ8С103Ф3П6 ИДЕ и компајлер
- СТМ8С са Ардуином користећи Сдуино
- Преузимање потребног софтвера
- Постављање СТВД-а и Цосмиц Ц компајлера
- Стандардна периферна библиотека за СТМ8С103Ф3П6
- Састављање Првог програма
- Учитавање кода са СТВД-а на развојну плочу СТМ8С помоћу СТ-Линк В2
СТМ8 је серија 8-Бит из СТМицроелецтроницс која је постала уобичајена избор микроконтролера за развој производа трошкова осетљив. Раније сам радио са АВР-ом, ПИЦ-ом и неколико других АРМ Цортек микроконтролера, али сигурно у неким апликацијама постају претјерани и знатно повећавају трошак БОМ-а. Недавно, након рушења неколико јефтиних кинеских производа, открио сам да већина њих има микроконтролер СТМ8 у себи. ИЦ није само јефтин, већ га садржи и мноштво карактеристика и опција што га чини погодним за употребу у многим различитим апликацијама. На пример, СТМ8С Серија контролера (који ћемо научити у овом водичу серији) је контролер опште намене, али постоје и друге серије као да је СТМ8А за Аутомотиве Десигнс и СТМ8Л за Лов Повер дизајна на батерије који одобрава примену ових контролера.
У овој серији водича научићемо како програмирати микроконтролере СТМ8С, тачније СТМ8С103Ф3П6. Разлог за почетак рада са овим специфичним бројем дела је само његов фактор цене и учинка. Као!! само га погледајте за само 0,25 долара (приближно 20 рупија) добијамо 8-битни микроконтролер са 16МХз интерним осцилатором, 8кБ Фласх-а, 10-битним АДЦ-ом, УАРТ-ом, СПИ-ом и И2Ц-ом. Ко се не би заинтригирао? Такође, СТМ8С103Ф3П6 је широко популаран, па ћете стога као почетник пронаћи довољно подршке ако вам затреба помоћ ван туторијала. Полазећи од овога, имаћемо низ туторијала, сличних Водичима за ПИЦ програмирање, где ћемо научити како да програмирамо овај контролер од основног трептања до различитих интерфејса екрана и сензора. Такође можете погледати Водич за СТМ32Ф103Ц8 и пројекте ако сте заинтересовани за 32-битне СТМ микроконтролере.
Избор алата за развој хардвера и софтвера
Сада када смо деицидирали микроконтролер, мораћемо да изаберемо алате за развој хардвера и софтвера да бисмо започели процес учења. Постоји много опција, овде сам изабрао оне које су бесплатне за употребу и лако доступне свима.
СТМ8С103Ф3П6 Развој
Службена развојна плоча за СТ-ов 8-битни микроконтролер назива се СТМ8 Дисцовери кит, али ми ћемо користити другу јефтину развојну плочу коју лако можете пронаћи код локалног добављача или у продавници на мрежи. Имиџ одбора СТМ8С103Ф3П6 развој који ћемо користити у овом упутству је приказан испод.
Плоча се састоји само од минималних компонената потребних за почетак развоја. Прикладан је за плоче и погодан за компактне примене. Дијаграм интерних кола за развојну плочу приказан је доле.
Ако погледате изблиза, приметићете да осим СТМ8С103Ф3п6 контролера имамо и тастер за ресетовање за ресетовање контролера. Напонски и пробни вод повезани на ПБ5 (порт Б пин 5) и регулатор напона АМС1117 који претвара 5В из УСБ порта у 3.3В за контролер. Ако је потребно, контролер такође може да ради на 5В. Доле су обележени различити делови на контролеру. Такође имамо 4 пина за програмирање, наиме 3,3 В, ГНД, СВИМ и НРСТ, који се могу користити за лако програмирање и отклањање грешака у нашем микроконтролеру.
СТМ8С103Ф3П6 програмер
За програмирање нашег контролера користићемо СТ-ЛИНК в2 који је јефтин и лако доступан на мрежи. Постоје многе варијанте (металне, пластичне, златне, ружичасте, голе плоче) ове СТ-ЛИНК в2 плоче и све служе у исту сврху. Мој је приказан доле, али можете користити било који тип СТ-ЛИНК програмера, пиноут ће се разликовати, зато само проверите да ли сте правилно прочитали пиноутс на кућишту. Ту је и СТ-ЛИНК В3 од саме СТ-Мицроелецтроницс који се може користити за озбиљно отклањање грешака. За сада то нећемо користити, јер је мало скупо, сачуваћемо га за будућност.
СТМ8С103Ф3П6 ИДЕ и компајлер
Избор правог ИДЕ-а и компајлера за СТМ8С103Ф3П6 збуњује, једноставно зато што постоји много опција које можете изабрати. Званични алати доступни за микроконтролер СТМ8 приказани су на доњој слици.
На страни „Конфигурација“ имамо СТМ8ЦубеМк, пробао сам софтвер и то ме је потпуно изневерило. За разлику од СТМ32Цубе, СТМ8Цубе не може аутоматски генерисати код. Може генерисати мапирање пин-ова само у сврхе визуелизације и може вам добро доћи ако преносите свој код са једног контролера на други. Осим тога, не бих га користио. Дакле, у овој серији водича ово нећемо користити.
За ИДЕ и Цомпилер имамо пуно могућности на избор. Главне две опције за ИДЕ су ИАР воркбенцх и СТ Висуал Девелоп (СТВД), оба софтвера се чине као да су из 90-их, али након неког времена играња с њим, открио сам да је СТВД добар избор само зато што је потпуно бесплатан. Слично томе, за Компајлер ћемо користити Цосмиц Ц Компајлер, опет само зато што је потпуно бесплатан. Још један разлог за одабир овог ИДЕ-а и компајлера је тај што би, након што се упознамо са окружењем, било који други 8-битни микроконтролер компаније СТ лако могао да се користи без много напора. Касније у овом чланку ћемо сазнати како инсталирати и подесити СТВД помоћу Цосмиц Ц компајлера.
За Фласхинг ћемо користити СТ Висуал Программер (СТВП), овај алат ће се аутоматски инсталирати када инсталирамо СТВД. Биће интегрисан у сам ИДЕ, помажући нам да брзо програмирамо и отклањамо грешке. Коначни софтвер биће СТМСтудио који је софтвер за надгледање СТМ8. Софтвер може да помогне у отклањању грешака СТМ8 у реалном времену и има неке сјајне функције као што су надгледање променљиве вредности, цртање графикона итд. Нисам довољно експериментисао са овим софтвером. И, бар за првих неколико водича, нећемо користити овај софтвер јер нам неће бити потребни велики захтеви за отклањање грешака.
СТМ8С стандардна периферна библиотека: СТ Мицроелецтроницс пружа скуп библиотека за олакшавање развоја кода за СТМ8С микроконтролере, ова библиотека се назива „ Стандардна периферна библиотека “ или скраћено СПЛ. Библиотека је сјајна, осим што је написана имајући на уму све могуће контролере у 8-битној породици СТМ8С / А, а не само СТМ8С103Ф3П6 контролер који ћемо користити. Због тога морамо ту и тамо направити неке дораде како бисмо успели (што ћу поделити касније). Али ипак, верујем да вреди покушати, јер то може убрзати развој, и стога ћемо га користити у нашем упутству.
Ако не желите да користите библиотеку, морате директно да приступите регистрима контролера или да направите програмирање склопа без метала. Обоје је забавно, под условом да имате времена да то научите и искористите. Моја идеја је да користим СПЛ библиотеку где год добро ради, а затим такође радим на нивоу регистра и склопа ако је потребно. Покушајмо да не измишљамо точак!
СТМ8С са Ардуином користећи Сдуино
Расправа о софтверским опцијама никада неће бити потпуна ако не споменем подршку за Ардуино ИДЕ СТМ8С. Да, иста СТМ8С103Ф3П6 плоча може се програмирати директно из Ардуино ИДЕ-а користећи Сдуино, захваљујући Мајклу Мајеру. Али, пројекат је још увек у фази развоја и вероватно ће требати одређено време и подршка заједнице за Сдуино да пружи потпуну подршку платформи. Међутим, само у року од неколико минута играња са Сдуином, почео ми се свиђати и стога сам одлучио да направим и посебан чланак о томе како програмирати СТМ8С микроконтролер са Ардуином. Овде ћу повезати чланак када буде спреман. У том чланку ће бити речи о томе зашто и зашто не бисте требали користити Ардуино ИДЕ за програмирање својих СТМ8С микроконтролера.
Дакле, ово су моји избори за софтвер и хардвер, обавестите ме у одељку за коментаре ако мислите да би неки други софтвер био бољи избор и зашто. Волео бих да истражим и друге опције.
Преузимање потребног софтвера
Сад кад смо се одлучили за софтвер који ћемо користити за ово упутство, хајде да га преузмемо помоћу следеће везе. Сав софтвер је бесплатан за преузимање и употребу, само бисте морали да региструјете бесплатан налог на СТ и Цосмиц да то већ нисте урадили.
- СТ Висуал Девелоп (СТВД)
- Компилатор Цосмиц Ц
- Стандардна периферна библиотека
- СТМ8Цубе Мк (опционално)
- СТМСтудио за СТМ8 (опционално)
Постављање СТВД-а и Цосмиц Ц компајлера
Након што преузмете оба софтвера, само следите упутства на екрану да бисте их инсталирали. Препоручио бих да их оставите у подразумеваним директоријумима како бисте избегли каснију забуну. СТВД ИДЕ ће се инсталирати без икаквог напора. За Цосмиц Ц компајлер током процеса инсталације морате добити бесплатни кључ лиценце. Само треба да наведете податке о компанији са ИД-ом е-поште, ако сте студент, само то спомените. Процеси добијања лиценцног кључа су тренутни и аутоматски, иако упуте за постављање кажу да би то могло потрајати дан или два, кључ лиценце сам аутоматски добио на свој е-маил ИД чим сам га послао, само пазите да проверите СПАМ. Моја е-пошта са потврдом је приказана доле.
У складу са упутством за е-пошту, само копирајте датотеку лиценсе.лиц и залепите у подмапу „лиценца“ у вашој инсталационој фасцикли. За мене је пут био „Ц: \ Програм Филес (к86) ЦОСМИЦ \ ФСЕ_Цомпилерс \ ЦКССТМ8 \ Лиценсе” . Само залепите датотеку на место као што је приказано доле.
Стандардна периферна библиотека за СТМ8С103Ф3П6
Као што је раније речено, СТ Мицроелецтроницс нуди библиотеке зване СПЛ које се могу користити за све 8-битне микроконтролере СТМ8С / А. Можете преузети оригинални СПЛ са СТ Мицроелецтроницс и извршити потребне промене или преузети моје СПМ библиотеке СТМ8С103Ф3П6 и користити их као такве. Препоручио бих касније.
Оригинални СПЛ од СТ Мицроелецтроницс
СТМ8С103Ф3П6 СПЛ
Док сте тамо, такође осигурајте да преузмете приручник за кориснике СПЛ-а, који ће бити врло згодан при програмирању контролера.
Састављање Првог програма
Сада када је све спремно, покушајмо да компајлирамо наш први програм да бисмо проверили да ли ИДЕ, компајлер и библиотека раде онако како би требало. Такође можете погледати видео на дну странице за детаљна упутства.
Започните тако што ћете отворити СТВД и изаберите Филе -> ВоркСпаце, у искачућем прозору одаберите „Нев Воркспаце“ и унесите назив пројекта и путању на којој програм треба да буде сачуван. Свој програм именујем БареМинимум и чувам у директоријуму на радној површини. Кликните на ОК и добићете дијалог Нев Пројецт као што је приказано доле.
Поново именујем пројекат као необавезан и под ланцем алата морамо одредити корен ланца алата до путање на којој је инсталиран СТМ8 Цосмиц преводилац. Подразумевана адреса путање је „Ц: \ Програм Филес (к86) ЦОСМИЦ \ ФСЕ_Цомпилерс \ ЦКССТМ8“ . Након тога само кликните ОК да бисте добили прозор „МЦУ Селецтион“.
Потражите СТМ8С103Ф3П, изаберите га и кликните на дугме У реду. Ово ће отворити нови пројекат за СТМ8С103Ф3П на СТВД-у, прозори би по завршетку требали изгледати овако.
Кликните десним тастером миша на „изворну датотеку“ и изаберите „Додај датотеке у фасциклу“ да бисте укључили све ц датотеке из наше СПЛ библиотеке, слично десним тастером миша кликните на „Укључи датотеке“ да бисте укључили све датотеке заглавља. Ако имате питања, можете погледати видео испод. Након што се додају све датотеке, кликните Буилд -> ребуил д алл, а затим Цомпиле да бисте проверили да ли компајлер и СПЛ раде како се очекује. Ако све буде у реду, требало би да видите следећи екран са грешком резултата градње 0 и упозорењем 0.
Са овим учињеним, сада можемо бити сигурни да све наше СПЛ библиотеке раде са Цосмиц компајлером и СТВД-ом. Ово је стандардни поступак који ћемо следити за сваки нови пројекат. Такође можете да укључите само потребне заглавље и изворне датотеке које су потребне пројекту како би се смањило време израде ако је потребно.
Учитавање кода са СТВД-а на развојну плочу СТМ8С помоћу СТ-Линк В2
Повежите СТ-Линк В2 са развојном плочом као што је приказано доле.
Везе су прилично равне, а најбољи део је што вам не требају спољне компоненте. Моје хардверско подешавање за програмирање приказано је испод, управо сам користио женске заглавне жице да бих успоставио везу. Међутим, имајте на уму да се пиноут вашег СТ-Линк-а може разликовати од мог. Обавезно следите пиноут-е на уређају пре успостављања веза.
Успоставите везу и повежите уређај са рачунаром, инсталација управљачког програма треба да почне аутоматски. Помоћу управитеља уређаја можете да се уверите да ли је рачунар правилно открио СТ-ЛИНК В2. Такође ћете приметити да тест лампица на плочи трепће ако ово први пут напајате плочу. Чим успешно компајлирамо код на СТВД, добићемо датотеку проширења „С19“ под директоријумом за отклањање грешака у фасцикли пројекта. Моја датотека С19 је приказана доле.
Овај С19 је попут Хек датотеке коју треба учитати у контролер. Да бисте отпремили програм, отворите СТ Висуал Программер (СТВП) који би требало да се инсталира заједно са СТВД. Затим у прозору за конфигурацију одаберите као што је приказано на доњој слици и кликните ОК.
Затим кликните на Датотека-> Отвори и дођите до датотеке С19 коју смо раније показали. Затим да бисте флеширали уређај, следите Програм -> Тренутна картица. Ако је трептање било успешно, требало би да видите следећи излаз.
Када купите СТМ8С, подразумевано ће имати блин програм који трепће тест ЛЕД. Сада након отпремања овог празног кода, ЛЕД више неће трептати.
Важно: Открио сам да мој СТ-Линк није ресетовао плочу аутоматски након програмирања. Морао сам да га искључим и поново повежем да бих проверио излаз свог програма. Нисам сигуран да ли је ово проблем за све, обавестите ме у одељку за коментаре. Такође, погледајте видео на дну који објашњава решење за ово.
Овим, хајде да завршимо са овим упутством, научили смо основе хардвера, поставили развојно окружење и научили како да компајлирамо и отпремимо код. Сада смо спремни за напредак и то ћемо користити у свим нашим предстојећим водичима. Ако имате питања, објавите их на нашим форумима и пратите још !!