Mundarija:

ST Visual Cosmic STM8 kompilyatori yordamida ST Visual rivojlantirishni sozlash: 11 qadam
ST Visual Cosmic STM8 kompilyatori yordamida ST Visual rivojlantirishni sozlash: 11 qadam

Video: ST Visual Cosmic STM8 kompilyatori yordamida ST Visual rivojlantirishni sozlash: 11 qadam

Video: ST Visual Cosmic STM8 kompilyatori yordamida ST Visual rivojlantirishni sozlash: 11 qadam
Video: STVD (COSMIC+SPL) Установка и настройка для STM8S 2024, Noyabr
Anonim
ST Visual Cosmic STM8 kompilyatori yordamida ishlab chiqish
ST Visual Cosmic STM8 kompilyatori yordamida ishlab chiqish

Men STM8 mikrokontrollerlarini ST Microelektronikadan (ST) Windows 10 bilan dasturlash uchun Integrated Development Environment (IDE) ni shunday sozlayman. Men bu to'g'ri yo'l deb da'vo qilmayman, lekin bu men uchun yaxshi ishlaydi. Bu yo'riqnomada bu juda ko'p ish kabi ko'rinadi, lekin aslida unchalik ish emas.

Ta'minot:

Qahva va biroz sabr

Windows 10 bilan kompyuter

Internetga ulanish

STLink tuzatuvchi/dasturchi

1 -qadam: Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling

Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling
Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling
Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling
Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling
Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling
Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling
Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling
Cosmic Compiler va ST Microelectronics IDE (STVD) ni yuklab oling

Siz ST.com saytida va Cosmic.com saytida ro'yxatdan o'tishingiz va ulardan bir nechta dasturlarni yuklab olishingiz kerak bo'ladi. Bundan tashqari, sizga Cosmic kompilyatoridan foydalanish uchun litsenziya kerak. Bu litsenziya bepul va bir yil davomida amal qiladi, shundan so'ng siz yangi litsenziyani so'rashingiz mumkin. Litsenziya faqat talab qilingan kompyuter uchun amal qiladi, menimcha, u ST tomonidan o'z uskunasidan foydalanadigan kompaniyalar uchun xizmat sifatida to'lanadi, lekin men bunga amin emasman. (Bilaman, boshqa kompilyator bor, SDCC, bu ochiq manba, lekin u bilan hech qanday tajribam yo'q.)

Men Cosmic kompilyatorini yuklab olishdan boshlayman, chunki litsenziya so'rovini Cosmic kompaniyasi xodimi ko'rib chiqadi, shuning uchun biroz vaqt ketishi mumkin, agar siz so'rovni hafta oxiri yuborsangiz, keyingi haftagacha kutishingizga to'g'ri keladi. Bu vaqt ichida biz STni ID -ni yuklab olishimiz va o'rnatishimiz mumkin. Shunday qilib, boring:

https://www.cosmicsoftware.com/download.php

"Cheklanmagan STM8 bepul vositalari" sariq blokini ko'rmaguningizcha pastga siljiting, "Ro'yxatdan o'tish va yuklab olish" havolasini bosing va kerakli ma'lumotlarni to'ldiring. Shundan so'ng siz kompilyatorlarni yuklab olishingiz mumkin. Yuklab olishda Idea_STM8 va IdeaCXM deb nomlangan ikkita kompilyator va ikkita dastur mavjud, biz faqat STM8 kompilyatoridan foydalanamiz.

2 -qadam: Kosmik kompilyator (lar) ni o'rnatish

Kosmik kompilyator (lar) ni o'rnatish
Kosmik kompilyator (lar) ni o'rnatish
Kosmik kompilyator (lar) ni o'rnatish
Kosmik kompilyator (lar) ni o'rnatish
Kosmik kompilyator (lar) ni o'rnatish
Kosmik kompilyator (lar) ni o'rnatish

Yuklab olingan dasturni kompyuter administratori sifatida ishga tushiring (sizga administrator paroli kerak bo'ladi), u "Program Files (x86)" katalogiga o'rnatiladi. Ko'rsatmalarni bajaring, litsenziyani qabul qiling (men o'qimaganman, hech kim bormi?), Ismingizni va kompaniyangiz nomini to'ldiring va keyingi ekranni bosing. Barcha fayllarni o'rnatgandan so'ng, u o'zini "yo'l" ga qo'yishni xohlaydi, men uni HKEY_LOCAL_MACHINE da ro'yxatdan o'tkazdim, shunda u nafaqat administrator, balki kompyuterning barcha foydalanuvchilari uchun ham ishlaydi.

Keyingi ekranlardagi ma'lumotlarni o'qishga e'tibor bering va xohlagan narsani tanlang, masalan. Ish stolida hech qanday piktogramma kerak emas.

O'rnatish oxirida Readme.txt ochiladi, siz dasturiy ta'minotni ikki yo'l bilan registratsiya qilishingiz mumkin. Men bilan "Internetda" usuli ishlamadi, shuning uchun men elektron pochta variantini tanladim. Foydalanuvchi, kompaniya va elektron pochtani haqiqiy ismingiz va elektron pochta manzilingiz bilan to'ldiring, menda shirkat yo'q, shuning uchun men yaxshi ism qo'ydim. Keyin "Faylga yozish" -ni tanlang, uni siz va administrator kira oladigan joyda saqlang: C: / men uchun ishlagan. Siz bu faylni elektron pochtaga ilova sifatida yuborishingiz yoki undagi matnni elektron pochtangizga qo'yib, Kosmosga yuborishingiz mumkin. Elektron pochta manzili:

[email protected]

va mavzu sifatida "STM8FSE_2020 litsenziya so'rovi" ni qo'yganingizga ishonch hosil qiling. O'rnatishni tugating va kompyuterni qayta ishga tushiring. Va keyin litsenziya kelishini kuting.

3 -qadam: ST Visual Develop dasturini yuklab oling va o'rnating

ST Visual Develop dasturini yuklab oling va o'rnating
ST Visual Develop dasturini yuklab oling va o'rnating
ST Visual Develop dasturini yuklab oling va o'rnating
ST Visual Develop dasturini yuklab oling va o'rnating
ST Visual Develop dasturini yuklab oling va o'rnating
ST Visual Develop dasturini yuklab oling va o'rnating

Ayni paytda ST Visual Develop dasturini yuklab oling va o'rnating.

Boring:

Sahifaning pastki qismiga o'ting va "Dasturiy ta'minotni olish" tugmachasini bosing, Litsenziya shartnomasini qabul qiling (men ham o'qimaganman …) va agar sizda ST bilan login bo'lsa, tizimga kiring yoki agar sizda hali login bo'lmasa, ro'yxatdan o'ting. ST sayti juda sekin, shuning uchun siz uning javobini bir necha soniya kutishingizga to'g'ri keladi, sabr bilan kuting, u ishlaydi.

Yuklab olingan zip-faylni saqlang va oching, dasturiy ta'minotni Windows xohlagan joyga chiqarib oling. Administrator sifatida "sttoolset_pack42.exe" dasturini ishga tushirish orqali ST Visual develop dasturini o'rnatishni boshlang. Birinchi ekranlarni bosing va yana litsenziya shartnomasini qabul qiling (va yana o'qimasdan) va ST taklif qiladigan variantlarning ko'pini qabul qiling. Yo'q, ST nima uchun "st_toolset" kabi katalog nomlarini tanlaganini bilmayman. Shunga qaramay, men ish stoli ikonkalarini xohlamadim va nashr yozuvlarini o'qimadim.

ST asboblar to'plamini birinchi marta o'rnatganimda, o'rnatish oxirida osilib qoldi. Vazifa menejeri orqali o'rnatishni tugatganimda va ST Visual Develop dasturini ishga tushirishga harakat qilsam, "anomaliya" bo'lgani haqida ekran paydo bo'ldi. Shundan so'ng dastur boshlandi ….

Men qayta o'rnatdim va ikkinchi marta hammasi yaxshi o'tdi. Keyinchalik, Windows -ning yana bir qayta ishga tushirilishi, dastur to'g'ri o'rnatildi va xato xabarisiz ishga tushdi.

4 -qadam: STVD ning ba'zi variantlari

STVD ning ba'zi variantlari
STVD ning ba'zi variantlari
STVD ning ba'zi variantlari
STVD ning ba'zi variantlari
STVDdagi ba'zi variantlar
STVDdagi ba'zi variantlar

Biz ST Visual Develop (STVD) da bir nechta variantni o'rnatishimiz kerak - "Asboblar" - "Variantlar" - asboblar to'plami. "STM8 Cosmic" deb nomlangan asboblar to'plamini tanlang va uning "Ildiz yo'lini" o'rnating:

"C: / Program Files (x86) COSMIC / FSE_Compilers / CXSTM8"

"Bin yo'l" bo'sh qolishi mumkin, "Yo'l qo'shish" allaqachon "HSTM8" bo'ladi va "Lib yo'li" "Lib" bo'ladi, bularning hammasi to'g'ri. Qo'llash va OK tugmasini bosing, siz boshqa asboblar to'plami haqida ogohlantirish olasiz, shuning uchun ularni e'tiborsiz qoldiring.

Tanlovlarning boshqa yorliqlarini ko'rib chiqing, ba'zi variantlarni o'zgartirishingiz mumkin.

"Nosozliklarni tuzatish" yorlig'ida men fayllarni avtomatik saqlashni tanladim, chunki u har tahrirdan keyin kompilyatsiya oldidan saqlamoqchimisiz, degan savol meni bezovta qilardi. Albatta, bu mening tahrirlarim saqlanishini xohlaydi!

"Tartibga solish" yorlig'ida men uzun chiziqni o'chirib qo'ydim - sukut bo'yicha yoqilgan va men yorliq o'lchamini 2 dan 4 gacha va shriftni "Courier New" dan "Consolas" ga 12 nuqta o'lchamiga o'zgartirdim.

Lekin bu sozlamalar shaxsiy imtiyozlar, muhim emas va keyinroq bajarilishi mumkin.

5 -qadam: Birinchi dastur (miltillovchi)

Birinchi dastur (miltillovchi)
Birinchi dastur (miltillovchi)
Birinchi dastur (miltillovchi)
Birinchi dastur (miltillovchi)
Birinchi dastur (miltillovchi)
Birinchi dastur (miltillovchi)

Dasturlashni boshlash vaqti keldi. Buning uchun bizga STVD loyihalar haqidagi ma'lumotlarni saqlaydigan ish maydoni kerak bo'ladi. Fayl - Yangi ish maydoni - Bo'sh ish joyini yaratish -ni bosing, men odatda ish maydoniga loyiha uchun foydalanadigan mikrokontroller turini nomini beraman. u Men "STM8S103" ni tanladim va uni xuddi shu nomdagi katalogga joylashtiraman.

Endi siz ish maydonini (STM8S103.stw) "sichqonchaning o'ng tugmasi" bilan bosishingiz va unda yangi loyiha yaratishingiz mumkin. Keyin "Yangi loyiha" ni bosing va unga kerakli nom bering, shuningdek, ushbu loyihani joylashtirish uchun katalog yarating, STVD buni o'zi qilmaydi! STM8 Cosmic asboblar zanjirini tanlang va asboblar zanjiri ildizi "C: / Program Files (x86) COSMIC / FSE_Compilers / CXSTM8" ekanligini tekshiring OK ni bosing.

Keyin siz foydalanadigan mikrokontrolerni tanlang, bu erda men STM8S103F3P ni tanlayman va Tanlash -ni bosing, OK

Loyiha yaratildi va siz STVD qanday fayllar yaratilganligini ko'rish uchun papkalarni ochishingiz mumkin. Endi CLOSE ST Visual Ish maydonidagi o'zgarishlarni va yangi loyihangizni ishlab chiqing va saqlang. STVD -ni Cosmic kompilyatorida ishlatishga tayyorlash uchun biz ba'zi fayllarning ustiga yozamiz va boshqasini qo'shamiz.

6 -qadam: Qayta yozish va fayllarni qo'shish

Qayta yozish va fayllarni qo'shish
Qayta yozish va fayllarni qo'shish
Qayta yozish va fayllarni qo'shish
Qayta yozish va fayllarni qo'shish

Kerakli fayllarni bu erdan yuklab olish mumkin:

https://gitlab.com/WilkoL/setup-st-visual-develop-…

va ularni yangi papkada saqlang, men bu papkani "Andoza" deb atayman

Oldingi bosqichda biz loyihani o'z loyiha papkasida yaratdik. Gitlab -dan yuklagan ALL fayl va papkalarni ushbu loyiha papkasiga nusxalash. U allaqachon mavjud bo'lgan ba'zi fayllarni almashtiradi.

Standart kutubxona ishlatiladi (main.h ga qarang) stm8s_conf.h USE_FULL_ASSERTni istisno qilish uchun allaqachon tahrirlangan)

stm8s_it.c allaqachon TIMER4 UPDATE IRQ bilan ishlashni o'zgartirish uchun tuzatilgan (systick va DELAY uchun)

7 -qadam: ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang

ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang
ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang
ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang
ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang
ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang
ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang
ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang
ST Visual Development dasturini qayta ishga tushiring va loyihani sozlashni yakunlang

STVD -ni qayta ishga tushirganingizda sizga juda bo'sh ekran ko'rsatiladi.

Loyihangizga o'tish uchun Fayl - Oxirgi Ish maydoni - "Siz bergan ism" ni tanlang. STVD oxirgi (va hali ham faqat) loyihani ochadi. Siz fayllarni birinchi ko'rib chiqishingiz mumkin, lekin biz hali tayyor emasmiz.

Avval quyidagi fayllarni qo'shing:

manba fayllariga stm8s_it.c

stm8s_it.h va main.h fayllarni qo'shish uchun (rasmlarga qarang)

Endi loyiha papkasida papkalarni yarating:

lib

lib/inc

lib/src

standart_lib

standart_lib/ink

standard_lib/scr (rasmlarga qarang)

Va shundan so'ng, tegishli disk papkalaridagi barcha fayllarni loyihadagi yangi papkalarga qo'shing. Oxir -oqibat, u yuqoridagi oxirgi rasmga o'xshaydi.

8 -qadam: Loyiha sozlamalari

Loyiha sozlamalari
Loyiha sozlamalari
Loyiha sozlamalari
Loyiha sozlamalari
Loyiha sozlamalari
Loyiha sozlamalari

Biz deyarli tayyormiz…

O'tish: Loyiha -> Sozlamalar -> Umumiy

- Asboblar to'plami STM8 Cosmic bo'lishi kerak

- "Loyihaga mos keladigan asboblar to'plami" ni tanlang.

- Ildiz yo'lini o'zgartiring: C: / Program Files (x86) COSMIC / FSE_Compilers / CXSTM8

- yo'l Hstm8 bo'lishi kerak, kutubxona yo'li Lib bo'lishi kerak

O'tish: Loyiha -> Sozlamalar -> C -kompilyatori -> Umumiy toifasi

- optimallashtirishni sozlash uchun o'zgartiring

- Kompilyator xabarlar ekranini "Faqat xatolarni ko'rsatish" dan "Xatolarni ko'rsatish va ogohlantirishlar" ga o'zgartiring.

- STM8S103 HSE_VALUE = 16000000UL ni oldingi protsessor ta'riflariga qo'shing.

- (yoki STM8S103 yoki boshqa mikrokontroller turi va HSEning haqiqiy qiymati)

O'tish: Loyiha -> Sozlamalar -> C -kompilyatori -> toifalarni optimallashtirish

DEBUG uchun quyidagilarni tanlang:

-disk raskadrovka uchun o'chirib qo'yish (-yo'q)

- Alohida bo'limlarda funktsiyalarni ajratish (+ajratish)

RELEASE uchun tanlang:

- Alohida bo'limlarda funktsiyalarni ajratish (+ajratish)

- Tezlikni optimallashtirish (+tez) (STM8 Cosmic> = 4.3.2)

- yoki kod hajmini kamaytirishni tanlang (+ixcham)

(lekin +tez va +ixcham emas)

O'tish: Loyiha -> Sozlamalar -> C -kompilyatori -> Kategoriya oldindan ishlovchisi

- kutubxonalar qo'shimcha bo'lishi kerak:

standard_lib / inc; lib / inc;. ← "nuqta" qo'shing

- buni disk raskadrovka va chiqarish sozlamalari uchun tekshiring

O'tish: Loyiha -> Sozlamalar -> bog'lovchi

- "Chiqish toifasi" bo'limida "Xarita faylini yaratish" bandini belgilang.

- agar sizga o'zgaruvchan nuqta o'zgaruvchilarini qo'llab -quvvatlash kerak bo'lsa, Umumiy toifadagi Float belgisini belgilang (bu kod hajmini oshiradi, shuning uchun buni faqat kerak bo'lganda qiling)

- buni disk raskadrovka va chiqarish sozlamalari uchun bajaring

Va nihoyat:

ogohlantirishlar / xatolarni tekshirish uchun OK ni bosing va REBUILD_ALL ni sinab ko'ring. Agar hamma narsa yaxshi bo'lsa, kod xatosiz tuziladi va uni disk raskadrovka papkasida topishingiz mumkin bo'lgan S19 faylga bog'lanadi.

9 -qadam: Mikrokontrollerni dasturlash

Mikrokontrollerni dasturlash
Mikrokontrollerni dasturlash
Mikrokontrollerni dasturlash
Mikrokontrollerni dasturlash
Mikrokontrollerni dasturlash
Mikrokontrollerni dasturlash

Oxirgi qadam - bu kodni mikrokontrolderning o'ziga olish. Buning bir necha yo'li bor, men buni STVD tarkibiga kiruvchi "Light Programmer" bilan qanday qilishni ko'rsataman.

Menyu satrida siz uni asboblar - dasturchi ostida topasiz

O'tish: Asboblar -> Dasturchi -> Sozlamalar:

Uskunani "ST-LINK" ga o'zgartiring.

O'tish: Asboblar -> Dasturchi -> Xotira maydonlari -DATA MEMORY: bo'sh bo'lishi kerak

-PROGRAM XOTIRASI -> Qo'shish: loyiha nomi / Debug / xxx.s19 fayl yoki

-PROGRAM MEMORY -> Qo'shish: loyiha nomi / Release / xxx.s19 faylini siz chiqish rejimida kompilyatsiya qilganingizda

Bayt variantini tekshirish qiziq, lekin odatda to'g'ri. Menimcha, baytni alohida dastur bilan o'zgartirish yaxshiroq: ST Visual Programmer, men bu erda muhokama qilmayman.

HOZIR OK tugmasini bosing, bu juda muhim, buni mikrokontrollerni dasturlashdan oldin qiling, aks holda siz yuqorida aytib o'tilgan barcha variantlarni o'rnatishda davom etasiz.

O'tish: Asboblar -> Dasturchi -> Dastur

Kodni MCU-ga yuklash uchun "Ishga tushirish" tugmachasini bosing va siz miltillayotganingizga qoyil qolasiz:-)

10 -qadam: Muammolarni hal qilish

Muammoni hal qilish
Muammoni hal qilish
Muammoni hal qilish
Muammoni hal qilish
Muammoni hal qilish
Muammoni hal qilish
Muammoni hal qilish
Muammoni hal qilish

Menga noma'lum sabablarga ko'ra, disk raskadrovka ishlamay qolishi mumkin, bu yechim DAO350. LL faylini ro'yxatdan o'tkazmaslik va uni qayta ro'yxatdan o'tkazish kabi ko'rinadi.

Buning uchun cmd -ni administrator sifatida ishga tushiring va quyidagi buyruqlarni bajaring:

Regsvr32 /u "C: / Program Files (x86) Common Files / Microsoft Shared / DAO / DAO350. DLL"

Regsvr32 "C: / Program Files (x86) Common Files / Microsoft Shared / DAO / DAO350. DLL"

Yorug'lik dasturchisini ishga tushirmoqchi bo'lganingizda, STVD ishdan chiqadi, ba'zida "xotirasi yo'q" xatosi bo'lishi mumkin. Agar shunday bo'lsa, ProgrammerAddOn. DLL faylini /STVD papkasidagi faylga nusxa ko'chiring.

EEProm -dan foydalanish

EEPROMga ma'lumotlarni kiritish zarur bo'lganda, Light Programmer orqali yuklash men bilan ishlamaydi. Men topgan yechim - bu PROGRAM MEMORY va DATA MEMORY (eeprom) dasturlash bilan shug'ullanadigan DEBUG sessiyasini ochish.

Men Cosmic va STVD -dan fayllar va papkalarga kirishda kichik muammolarga duch keldim, chunki men Windows -ni administrator sifatida emas, oddiy foydalanuvchi sifatida ishlataman. Men buni hal qilishning to'g'ri yo'li emasligini bilaman, lekin men kompyuterdagi barcha oddiy foydalanuvchilarga papkalarni o'zgartirish huquqini berdim:

C: / Program Files (x86) STMicroelectronics / st_toolset

C: / Program Files (x86) COSMIC / FSE_Compilers

Agar disk raskadrovka maqsadni tanlash uchun xabar bilan boshlanmasa, dastur ST-Linkni disk raskadrovka vositasi sifatida o'rnatmagan. Asosiy vazifa panelidagi ushbu variantni tanlang va tuzatish vositalarini tanlashni ST-Link-ni suzishga sozlang

11 -qadam: Stlink V2 va STM8S103F3p moduli

Stlink V2 va STM8S103F3p moduli
Stlink V2 va STM8S103F3p moduli
Stlink V2 va STM8S103F3p moduli
Stlink V2 va STM8S103F3p moduli
Stlink V2 va STM8S103F3p moduli
Stlink V2 va STM8S103F3p moduli

Aytish kerak emas, men foydalanadigan STlink-V2 va STM8S103F3P ni ko'rsatish uchun. Menda ST Microelectronics tomonidan ishlab chiqarilgan haqiqiy STLink bor, men Ebay orqali sotib olgan arzon klon, ikkalasi ham yaxshi ishlaydi. STM8S103 modullari hammasi Ebay, Aliepress yoki boshqalardan keladi, menimcha, rasmiy dilerlar Farnell yoki Sichqoncha sifatida STM8S103 moduliga ega bo'lmaydi, lekin siz ularni yalang'och qismlar sifatida olishingiz mumkin.

Tavsiya: