單片機(jī)要怎么學(xué)習(xí)?
網(wǎng)友解答: 單片機(jī)相當(dāng)于一個(gè)“微型電腦”,它集成了CPU、RAM、ROM,還有I/O、定時(shí)器、外部中斷、AD轉(zhuǎn)換、LCD驅(qū)動(dòng)、PWM等等各鐘功能的外設(shè)。在我們?nèi)粘J褂玫募矣秒娖?、電子產(chǎn)品
單片機(jī)相當(dāng)于一個(gè)“微型電腦”,它集成了CPU、RAM、ROM,還有I/O、定時(shí)器、外部中斷、AD轉(zhuǎn)換、LCD驅(qū)動(dòng)、PWM等等各鐘功能的外設(shè)。在我們?nèi)粘J褂玫募矣秒娖鳌㈦娮赢a(chǎn)品基本上都由單片機(jī)來控制。
首先選一款適合自己的單片機(jī)進(jìn)行學(xué)習(xí)。如果是某公司的在職員工,并且公司在做單片機(jī)相關(guān)產(chǎn)品的開發(fā)和制造。建議選用一款公司常用的單機(jī)來進(jìn)行入門學(xué)習(xí),這樣可以快速入門。有問題可以隨時(shí)請教其他工程師,關(guān)系搞好一點(diǎn),還會(huì)手把手的教你,這樣可以少走不少彎路,搞定單片機(jī)也易如反掌。如果基礎(chǔ)不是太好,也沒有其他人的指導(dǎo),可以選用51系列的單片機(jī)進(jìn)行入門學(xué)習(xí)。因?yàn)?1系列單片機(jī)的學(xué)習(xí)套件比較便宜,網(wǎng)上的資料比較齊全,參考書籍也很多。學(xué)起來也是比較簡單的,遇到什么問題,網(wǎng)上一搜基本上也能解決了。如果你有一定的硬件基礎(chǔ),還可以自己畫一塊開發(fā)板來進(jìn)行學(xué)習(xí)。如果有一定C語言基礎(chǔ),數(shù)字電路、摸擬電路基礎(chǔ)較好,對單片機(jī)也有一定的了解,建議直接選用STM32的單片機(jī)進(jìn)行入門學(xué)習(xí)。STM32系列單片機(jī)目前在國內(nèi)是相當(dāng)?shù)幕鸨坛藤Y料相關(guān)的多。網(wǎng)上買的開發(fā)板基本上都附帶教程、源程序以及開發(fā)環(huán)境,非常容易上手。制定學(xué)習(xí)計(jì)劃并嚴(yán)格執(zhí)行如果下定決心學(xué)習(xí)單片機(jī),一定要制定相關(guān)學(xué)習(xí)計(jì)劃,并且嚴(yán)格按計(jì)劃進(jìn)行學(xué)習(xí),請關(guān)注我的酷米號@電子產(chǎn)品設(shè)計(jì)方案。有詳細(xì)的指引哦。
網(wǎng)友解答:單片機(jī)應(yīng)該怎樣學(xué)習(xí),或者說單片機(jī)的學(xué)習(xí)流程應(yīng)該是什么,這個(gè)問題每個(gè)人看法有所不同,下面我說說我的看法。
一、學(xué)習(xí)單片機(jī)的I/O口控制單片機(jī)學(xué)習(xí),首先要學(xué)習(xí)的是單片機(jī)是怎么“感知”外部信號(輸入信號),又是怎么“控制”電路信號(輸出信號),還有就是單片機(jī)是怎么“告訴”人們我執(zhí)行到了那一步,執(zhí)行結(jié)果是什么(信息顯示),而所有這些功能的實(shí)現(xiàn),全部都是(并且只能是)通過單片機(jī)的I/O端口實(shí)現(xiàn)的。
換句話說,單片機(jī)與外電路的交流只能通過它的I/O口實(shí)現(xiàn),單片機(jī)的I/O口就是單片機(jī)的“眼、耳、口、鼻、舌”,所以學(xué)習(xí)單片機(jī),首先就是要學(xué)習(xí)單片機(jī)的I/O口控制。
二、學(xué)習(xí)單片機(jī)的寄存器單片機(jī)的各種功能,包括I/O口的輸入/輸出控制、定時(shí)控制、串口通信、AD/DA等功能模塊的選擇和控制,都是通過對相應(yīng)寄存器的配置來實(shí)現(xiàn)的。所以想要學(xué)好、學(xué)會(huì)、學(xué)通單片機(jī),就必須了解每種寄存器的功能,包括該寄存器的含義、對應(yīng)控制哪些功能,相應(yīng)位怎么配置等等,當(dāng)然,我們不需要死記硬背單片機(jī)寄存器的名字和各個(gè)位的含義,在我們編程時(shí),只要備好相應(yīng)的數(shù)據(jù)手冊,隨時(shí)查閱就可以了。
三、學(xué)習(xí)單片機(jī)的編程語言和方法現(xiàn)在絕大多數(shù)單片機(jī)編程都是基于C語言的,所以我們要知道C語言中各種數(shù)據(jù)類型在單片機(jī)系統(tǒng)中的數(shù)值范圍,程序結(jié)構(gòu),算法設(shè)計(jì),尤其是關(guān)于邏輯表達(dá)式和算術(shù)表達(dá)式的區(qū)別,單片機(jī)由于性能限制,不推薦使用乘除法,浮點(diǎn)數(shù)算法,因?yàn)檫@些都非常耗時(shí),所以盡量用移位算法來實(shí)現(xiàn)乘除法。
四、學(xué)習(xí)單片機(jī)的外圍電路首先要能夠準(zhǔn)確的理解單片機(jī)最小系統(tǒng)電路:電源模塊,時(shí)鐘模塊、復(fù)位模塊、編程及仿真模塊,還要知道常用的功能電路:AD轉(zhuǎn)換,SPI,IIC,UART等功能及電路設(shè)計(jì),了解常用電路模塊的功能和設(shè)計(jì),例如串并轉(zhuǎn)換電路,電平轉(zhuǎn)換電路,通信電路等。
五、學(xué)習(xí)單片機(jī)的開發(fā)環(huán)境目前各個(gè)單片機(jī)廠商提供的開發(fā)環(huán)境各不相同,所以,針對某種具體型號的單片機(jī),一定要熟悉其開發(fā)環(huán)境,包括芯片配置、時(shí)鐘配置、堆棧設(shè)置、燒錄文件配置、編譯配置等。
還要熟悉在該開發(fā)環(huán)境下如何進(jìn)行程序仿真、程序燒錄、斷點(diǎn)設(shè)置、運(yùn)行周期計(jì)算等。