You are on page 1of 4
ar1212020 (TAPIT) GIOITHIEU Cc ky thuat thiét ké ludng chong trinh cho hé thong nhung éng thyc hign chyong trinh cho hé théng nhing nhu: Polling, Interrupt, DMA, RTOS hode két hop céc phuon; é k C6 nhigu cach dé U zg phap trén Iai voi nhau, Bai viét nay sé gitp ede ban lam quen v6i cd thugt thiét ké trén va nim duge cdc wu diém, nhuge diém cia méi thugt d8 c6 thé Iya chon duge phwrong phép phi hgp cho hé théng cia minh. [HOC ONLINE: LAP TRINH VI DIEU KHIEN STM32, VI XU LY. ARM CORTEX -M] I. Phuong php Polling: Bay la phuong phap pho bién nhdt ma ai ciing sit dung durge khi lp trinh hing tir nhitng bai tap dau tién nhu nhdp nhay LED hay kiém tra trang, théi mit nhén 48 digu khién LED. Véi polling moi cau lénh déu duge viet trong him main() va cde vong lip vo han nhu while(1) hay for(;;) hay loop() déi v6i Arduino. Cac khéi Iénh dim nhn mét chite ning eiia mot hg théng s@ duge thye thi m6t cdch tuin ty bing cach kiém tra cde bién trang théi, digu kign. CPU lién tue thye thi céc 1énh kiém tra, Phuong phap nay phi hgp cho cae img dung don gian khong cé sy phan bigt vé mite d6 wu tign gitta céc nhigm vu trong ting dung dé. = Ui diém ciia Polling Dé code, don gidn cho nhiing tg dung don gin + Dé debug, tim 15i, gidm sét qué trinh thyc hign cia chuong trinh + Cie hoat dng trong chung trinh 6 thé dé ding dye dodn duge + Cée tai nguyén duge str dung, chia sé gitta chite ning 1 rang. —Nuegc diém. Kho phat trién cho nhiing chuong trinh phite tap + Dap tg chim véi ca Ludn luda tigu thy nang Ieng & mite cao nhat phi thi nguy! Polling Flow chart c sur kign kha ning cia vi digu khién. 11, Phuong phap Interrupt ‘V6i Interrupt, phan cimg sé théng bio cho CPU biét vé mét yéu cau dich vu (yéu cau ngiit — IRQ). Chuong trinh nén dang thye hién sé duge tam ‘ntps:Rapt viicac-ky-thualthiet-ke-uong-chuong-rinh-cho-thong-nhung! DYAN BAOTAO (Cac thud hid kd lung chyomg tinh cho he théng hing - TAPIT Search HOPTAC CONGDONG —LIENHE Like Fanpage 48 cp nhat thong tin! G TAPIT - Leaming, Research @ ‘Thich Tang AK inh , TAPIT - Learning, Research and Sh Community vio Chi Nhe (Chic mimg khéa hoc "Tri tué nha tao trong F Thanh phé thong minh* da cién ra thanh cong én canh céc chi 68 duge giang day bal cdc va chuyén gia ti $6 Théng tn truyBn thong, D Ning, Dai hoc quéc gia Ha NOI, Hoc vién Non Vigtinam, Géng ty TNHH TAPIT cling Lab ngh ‘SmUZSMC efing 4 mang dn cho hgc gis rét topic chat Ivong: =Nnan dign Khun mgt va cm xic véi Al =Xirly dnh voi Open CV, Python, va Google C Ky thu. Xom thom pr Pee Oe oy Xem thém cdc bai viét tir TAPIT Tim hiéu vé dinh dang cia mét sé géi tin MaQTT Giao thirc MQTT: Uu diém va ting dung ‘Thiét ké hé théng loT don gin dung giao thirc MQTT két hop PHP-MySQL va Nodeis Tim higu v8 khung truy8n Modbus RTU 4 2oit2r2020 ngung dé thye thi chwong trinh phuc vu ngat (ISR) tuong tng voi yeu cau diy. Sau khi thyc thi xong ISR thi chwong trinh s® quay vé thye thi tiép chuong trinh nén. Phuong phdp Interrupt thuéng duge két hgp véi phvong phap polling dé vi diéu khién cé thé lam nhiing vige khac ngoai ISR hod c6 thé két hgp véi cdc ché d6 nang Iugng thdp dé tit kigm ning lwgng cho hé théng. Ngit phii hop cho nhting Ging dung, chire nang cdu dap img nhanh vé mit thoi gian, c6 46 wu tién thye thi cao. Mot sé vi du don gidn véi ngit la cdc ban c6 thé phat hign ngudi ding nhan niit ma khéng can phai lién tue kiém tra trang thai logic ciia chin gan véi nat nhdn, hay cdc ban cé thé nhdp nhay LED 1 gidy bing cach sit dung ngit timer thay vi céc ham delay thing thuéng. — Un diém ctia ngdt: + Téc d6 dap tmg nhanh hon so véi polling + Cé thé sir dung ché d6 nang lugng thdp va ngit st danh thie CPU + Hé try Nested Interrupt (ngat c6 uu tién cao hon sé duge thye hign va tam ngung thye thi n; thap hon). — Khuyét diém. + Debug phite tap hon + Céc tai nguyén 6 thé duge str dung bat nga. Interrupts Flow chart IIL. Phuong phap DMA DMA 1a mt kj thudt truyén dit ligu ma khéng edn sy tham gia ctia CPU, di ligu cé thé duge truyén gitta cde ngoai vi, gitta ngoai vi voi b6 nhé va 1b6 mhé véi bd nhé véi cdc kich c& o6 thé cdu hinh duge nhu byte, half- word, word, DMA cé thé thong bao cho CPU biét 43 thye hign duge 1 nita qué trinh truyén hodc hoan thanh qué trinh truyén bing yéu cdu ngit. Véi ché d9 circular ciia DMA cho phép dit igu duge cp nhat tai 1 vi tri b6 nhé hoe mot ving nhé nhdt dinh, Cac duéng truyén DMA cé thé duge cau hinh cde mic wu tién khae nhau, = Ui diém cia phueomg phap DMA + Truyén dit ligu nhanh hon so véi sir dung CPU, + CPU 6 thé thyc thi cdc vige khdc trong khi dit ligu duge truyén, ting téc d6 chung cua hé théng. + Cé kha nang tyr dong ting dja chi 6 ngoai vi hoa Nhwoe diém: + Khéng phai dong vi diéu khign nao cing hé try DMA. 6 nhé dé hu tr. Juong-chuong-tinh-cho-thong.-nhung! (Cac thud hid kd tuéng chong tinh cho hé théng hing ~ TAPIT LBiva cach khéc phuc khi str dung, STM32CubeIDE dé lap trinh va debug cho board STM32F 103 BluePill Xem thém cdc chti dé khac GIOITHIEU by AN DAOTAO Khéa VOK MSP430 Khda Internet of Th Khda lap trinh Arduino chuyén sau Khéa Vi didu khidn STM32 - Vixirly ARM CortexM Khéa Xirly anh Tailigu Hoc vien kidmtra HOP TAC CONG DONG (Céccugec thi khoa hoc Hei nghi - heithao Hoat déng ngoai khda HE THONG NHUNG Vidibu khién Vi diu khién MSP430 Vididu khién 161 ARM Arduino Board May tinh nhiing INTERNET OF THING Bluetooth PHAN CUNG Thidtké PCB Thiétké. 3D DSP-Al LIEN HE oy 9r1212020 (Cac thud hid kd lung chyomg tinh cho he théng hing - TAPIT Direct Memory Access transfer Flow chart complete IT a eed Scum os Pe) eae) Se eR eu PN eats aT ae Pessoa Cae TV. Sir dung RTOS Khéng nhat thiét phai sir dyng RTOS cho cdc img dung vita va nho, hung sit dung RTOS sé lim don gin héa hitu ich cho nbimg chong trinh phite tap, gitip churong trinh e6 t6 chite hon. Céc task etia RTOS s& chia théi gian va chiém dung CPU va thyc thi m6t cach déng théi (nhin vé mit cac task thi la dng théi, tuy nhién cac ban luu y ring, trong | thi diém thi 1 CPU chi 6 thé thyc thi duge 1 lénh). C6 nhieu bin mign phi cé thé str dung trén nhiéu dong Vi diéu khién nhu FreeRTOS. = Uie diém ctia RTOS: + Don gid héa cée chuong trinh thite tap + Hé trg tot cho cée ting dung multitasking + Cé dinh duge bé nhé sit dung cho timg task. Nhuegc diém: + Tén thém b9 nhé cho RTOS RTOS Flow chart Initialization of Cee eso) Petal arr) ele) RTOS Bere V. Két hyp cdc phuong phap trén ‘Thuéng thi cde chwong trinh sé két hyp nhiéu phuong php lai véi nhau -ntps:!Rapt vaicac-ky-thualthiet-ke-luong-chuong-rinh-cho-thong-nnungl aia ar1212020 t6t nat. Chic cae ban thanh cong! atapiT 19/07/2019 (Cac thud hid kd tuéng chuomg tinh cho hé théng hing ~ TAPIT nh Polling + Interrupt, DMA hay RTOS + Interrupt dé khai théc durge téi da vi diéu khién va xay dyng duge chuong trinh, hé théng mét cach Nhém TAPIT R&D | HE THONG NHUNG, Uncategorized, Vididu khidn, Vididu khidn 161 ARM. PNoComments —Hidu va doc gia tri ADC STM32F411 | BO chuyén di tin higu tong tw 86 ‘Tim higuva str dung ctia timer trén STM32F 411 — Facebook Comments: Obinh tuan Bi rremoinivan Pug teh tag Facebook Sp xép theo mot nt CONG TY TNHH CONGBONGTAPIT CACLIEN KET LIEN HE TAPIT ang « , - . CongdingTAPIT awe than css uuéctiochinneioaie ‘ME-Newén Hujmh hat chugeaient doenn ede grb Heeb ucte sinh én vA icyngagiotgothvongauyén SET O8btaaLtA8 ign i; Cung cap dich vu tue van, nghién ecu, thigt ké va. thi cing cée gidi phap cong rghé; Dong thai eé ede chung teinh dio tao ky thuat ngin han truc tigp cho sinh vien va ky su. @rapir2018 khoa hoc ky thuét khéc nhau. én vai céng dng, ede thank vign ciing hoc tap, nghién eu, chia sé ede kien thie, kY nang vva cée ca hdl phat trign ban than. ‘ntps:Rapt viicac-ky-thualthiet-ke-uong-chuong-rinh-cho-thong-nhung! enh Vi 0 hung dn ky thudt (Chg Linh kign aig tr nhatthuongqn@gmail.com Facebook: Thuong Nguyen TAPIT Build the furure with us! 46

You might also like