You are on page 1of 10

TM HIU VI IU KHIN STM8 (STM8S003F3) V CCH S DNG

STVD (ST VISUAL DEVELOP)


1. Tng quan v STM8
Dng STM8 c 3 loi chnh:
STM8S: Standard - loi thng dng v ph bin nht.
STM8L: Ultra Low Power loi tit kim nng lng nht.
STM8Ax: Automotive thng gp trong cc thit b gii tr, iu khin ca xe hi, tu thy,
my bay,
y ta ch quan tm n dng stm8s.
Stm8s l dng vi iu khin 8 bits ca hng ST Microelectronic. Tng t nh cc dng vk 8bit
khc nh AVR, PIC, 8051, stm8s c cc ngoi vi c bn nh GPIO, ADC 10 bits, 3 b TIMER, UART, SPI,
I2C, PWM bn cnh n cn h tr cc ngoi vi phc tp nh USB, CAN, IrDA, LIN. B nh ni 128
bytes EEPROM 8Kbytes Flash. Rt d xy dng v pht trin cc ng dng nh hay driver (ng dng
chuyn bit thc hin mt chuyn g nh iu khin ng c, giao tip vi LCD, ). Mc in p
hot ng cho c 3v3 v 5v. c h tr th vin xy dng sn ca ST. Code trc quan, sinh ng bng
ngn ng C. Np chng trnh v cng n gin bng giao thc 1 dy (SWIM) cc nhanh. V mt iu
cc k ng quan tm l gi v cng r (tm 7.000 -> 20.000 1 chip).
Trong lot bi ny tc gi s hng dn cc bn xy dng ng dng trn chip stm8s003f3 c cc
thng s nh sau:
Speed 16MHz
Connectivity IC, IrDA, LIN, SPI, UART/USART
Peripherals Brown-out Detect/Reset, POR, PWM, WDT
Number of I /O 16
Program Memory Size 8KB (8K x 8)
Program Memory Type FLASH
EEPROM Size 128 x 8
RAM Size 1K x 8
Voltage - Supply (Vcc/Vdd) 2.95 V ~ 5.5 V
Data Converters A/D 5x10b
Oscillator Type Internal
Operating Temperature -40C ~ 85C
Package / Case 20-TSSOP (0.173", 4.40mm Width)

Hin ti trn th thng c bn cc loi kit STM8 Discovery cho tng dng ring bit ca chip ny.
STM8S Discovery (dng con stm8s105 cng tng t stm8s003f3),
STM8A Discovery, STM8L Discovery. 3Kit ny nhn chung l nh nhau, ch c
mt vi im khc bit nh v phn thit lp (config) cc chn chc nng, cc
ngoi vi. Cho nn nu khng c iu kin thit k mch hc, cc bn c
th tm mua cc kit ny thc hnh cho tin. Mt phn ng quan tm l
trn mi kit u c mt phn np v debug. y thc cht l 1 mch ST-
LINK c chc
nng np
bng SWIM.
Nu khng c kit ny, chng ta c 2 s la chn, mt l t
thit k mch ST-LINK (phn ny s c bn bc sau) hoc
mua mt mch np ST-LINK c bn ngoi th trng.

2. Thit k phn cng cho STM8

Trn y l mt mch nguyn l c bn cho dng STM8. Hu nh con STM8 no cng chy c
vi s nguyn l tng t. Mch trn c thit k di dng Adapter cn mt mch pht trin hon
chnh s c cp nht sau. C mt s iu cn lu l:
+ Dng STM8S003 c th khng cn thch anh ngoi v c thit lp bng dao ng ni. Nu
dng thch anh ngoi th cn ni tip chn OSCOUT vi thch anh 1 tr < 100ohm
+ Chn VCAP cn ni vi t 1uf (nn dng t taltan).
+ C th khng cn tr ko ln cho chn RESET v n c tr ni ko ln trong chip ri.
+ VCC c th l 5v hay 3v3 do chip c th hot ng c 2 mc in p.
+ Khi cn np chng trnh cho chip, ta quan tm 4 dy l VDD, GND, SWIM v RESET.
3. Phn mm cho STM8S
C nhiu cng cng lp trnh cho STM8S (gi l IDE) ta dng STVD (ST Visual Develop) IDE
c dng xy dng cho tt c cc dng vk khin ca ST, thng qua trnh bin dch (compiler)
Cosmic C for STM8. Dng STVP (ST Visual Programmer) np hoc thit lp kin kt (link) STVP vo
STVD debug v np nh bnh thng.
+ Ti STVD http://www.st.com/web/catalog/tools/FM147/CL1794/SC1808/SS1767/PF210567
+ Ti STVP http://www.st.com/web/en/catalog/tools/PF210568
2 link trn, ti bng cch nhn nt download pha di trang. Sau ci t 2 phn ny nh mt phn
mm bnh thng.
+ Ti gi pht trin cho STM8S http://www.st.com/web/en/catalog/tools/PF257962
+ Ti Cosmic C http://www.cosmicsoftware.com/download.php
Xung pha di trang, ch STM8 32k. N s ra 1 ci nh vy

Sau khi nhp thng tin ng k, ta s download


Sau ta ci t nh bnh thng. Lc ci t xong, c ku ng k th ta s ng k vi thng tin
ta in vo bc trn. Ci xong, ta s thy trnh dch ca mnh nm trong 1 ch tng t C:\Program
Files\COSMIC\CXSTM8_32K
4. M t th vin STM8S standard firmware library
y l th vin ST vit sn n gin ha cc bc thit lp ngoi vi bng cch s dng hm.
Gi s thay v thit lp thanh ghi GPIOA gi tr 0x01, ta ch cn gi hm GPIOW(GPIO,0x01). Vic ny lm
n gin v tit kim thi gian rt nhiu cho lp trnh vin trong cc chng trnh ln. Cn lm quen vi
vic ny thay v thit lp gi tr cho tng thanh ghi. Cng cn phi ni thm trong mt s trng hp
nht nh, vic gn gi tr cho thanh ghi c li hn s dng hm tng t.
Cch t chc cc file trong th vin

Lu 2 file l stm8s.h: b comment dng no chn chip tng ng. stm8_conf.h c cha cc ngoi vi
m mnh s dng, khi thao tc vi ngoi vi no th cn chn ngoi vi .
5. Thit lp cho STVP nhn chip stm8s003f
Menu Configure -> Configure ST Visual Programmer, chn nh hnh:

Ni dy SWIM, RESET, GND ca mch vi mch np (c th ni VCC ca ngun vi mch np nu
mch cha c ngun ring nhng 2 mch ny phi chung GND). Nu nh thit t ng, khi ta chn
Read -> Current tab, ta c th c c ni dung ca chip.
Trong trng hp ny, tc gi dng mch np c sn trn kit STM8S Discovery np cho con
stm8s003f. lm c iu ny, ta phi dng m hn, g 2 con tr 0hm SB1 v SB2 nh hnh ri dng
dy ni tng ng qua mch cn np. Khi s dng mch np ST-LINK th cng lm theo cch tng
t.

np 1 file xung chip, ta chn Open -> chn file *s19 hay *sx hay *hex. Thng th sau khi
bin dch xong, file *s19 s c to ra trong tn th mc project -> STVD - > Cosmic -> debug.
Qua cc bc trn, ta bit c cch c ni dung ca 1 chip v ghi d liu xung chip. Mi dng
vk ca ST cng c thc hin mt cch tng t vi cc chun np tng ng.
6. To project vi STVD v chng trnh cc chng trnh mu.
Sau khi ti gi pht trin STM8S v v gii nn, ta s thy cu trc ca n tng t nh hnh sau:

Th mc Libraries cha 2 th vin, ta ch quan tm n th vin STM8S_StdPeriph_Driver, th mc
Projects cha cc project mu v cng l project ca mnh to ra.
+ Copy th mc Project_template v paste vo ngay ti , i tn n thnh th mc, v d l
My_own_project, tng t nh hnh

+ M STVD, chn File -> Open Workspace, m file
\STM8SDISCOVERY_dev\Project\My_own_project\STVD\Cosmic\STVD_workspace.stw

+ Click phi vo Project -> settings, chn trnh dch v chip nh 2 hnh sau:





+ Click Debug instrument -> Target Settings, chn Swim ST-Link

+ Click phi FWLib pha di stvd_project khung bn tri, chn Add Files to Folder, tm file sm8s.h
trong STM8SDISCOVERY_dev\Libraries\ STM8S_StdPeriph_Driver\inc.

+ Thm dng #include <stm8s.h> trong main.c

+ B comment trong file stm8s.h nh hnh sau: ca file stm8s.h



+ Click phi vo Include Files, chn Add Files to Folder, chn file stm8s_conf.h trong
My_own_project\inc

+ Chp ngoi vi s dng vo th mc tng ng. Gi s dng GPIO, th ta Add files stm8s_gpio.h v
stm8s_gpio.c t STM8SDISCOVERY_dev\Libraries\STM8S_StdPeriph_Driver\inc v
STM8SDISCOVERY_dev\Libraries\STM8S_StdPeriph_Driver\src vo Include Files\FWLib v Source
Files\FWLib

+ Sau , chn Build -> Build all hoc nhn F7. Sau khi build xong, chn Debug -> Start Debugging
debug chng trnh. Sau bc build chng trnh, 1 file *.s19 s c to ra trong th mc
My_own_project\STVD\Cosmic\Debug, c th dng file ny np trc tip bng STVP khng qua
debug.

Cu Lc B Robot i hc Bch Khoa TPHCM
Phng th nghim thy lc kh nn xng c kh C1 i hc Bch Khoa TPHCM

You might also like