注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)MicroPython內(nèi)核開發(fā)筆記:基于MM32F3微控制器

MicroPython內(nèi)核開發(fā)筆記:基于MM32F3微控制器

MicroPython內(nèi)核開發(fā)筆記:基于MM32F3微控制器

定 價(jià):¥89.00

作 者: 蘇勇,卓晴
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買這本書可以去


ISBN: 9787302630289 出版時(shí)間: 2023-06-01 包裝: 平裝-膠訂
開本: 16開 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  MicroPython本身使用GNU C進(jìn)行開發(fā),在微控制器上實(shí)現(xiàn)了Python 3的基本功能,擁有完備的解析器、編譯器、虛擬機(jī)和類庫(kù)等。在保留了Python語(yǔ)言主要特性的基礎(chǔ)上,MicroPython還對(duì)微控制器的底層進(jìn)行了封裝,將常用功能都封裝到庫(kù)中,甚至為一些常用的傳感器和硬件編寫了專門的驅(qū)動(dòng)。 全書共17章,在內(nèi)容上可分為3部分: 搭建環(huán)境與基本方法(第1、2章)、移植和啟用核心功能(第3~7章)、設(shè)計(jì)實(shí)現(xiàn)更多模塊(第8~17章),并配備了豐富的樣例程序,用于驗(yàn)證MicroPython功能模塊可正常工作,并演示同這些模塊相關(guān)的典型編程方法。 本書力求理論與實(shí)踐緊密結(jié)合,內(nèi)容翔實(shí),實(shí)例豐富,可操作性強(qiáng)。本書可作為高等院校“嵌入式系統(tǒng)”相關(guān)課程的教材,也可供從事嵌入式系統(tǒng)開發(fā)與應(yīng)用的工程技術(shù)人員自學(xué),還可為電子愛好者使用嵌入式系統(tǒng)實(shí)現(xiàn)創(chuàng)意作品提供參考。 通過在線Git代碼倉(cāng)庫(kù) https://gitee.com/suyong_yq/micropythonsu可以下載**代碼。

作者簡(jiǎn)介

暫缺《MicroPython內(nèi)核開發(fā)筆記:基于MM32F3微控制器》作者簡(jiǎn)介

圖書目錄

第1章MicroPython: 用Python對(duì)微控制器編程
1.1緣起
1.1.1一切源自Python
1.1.2從桌面系統(tǒng)到微控制器
1.1.3從業(yè)余愛好到商業(yè)項(xiàng)目
1.1.4Python與STEM學(xué)科
1.2微控制器軟件
1.2.1什么是微控制器
1.2.2為什么使用MicroPython
1.2.3為什么不是C
1.2.4匯編語(yǔ)言怎么樣
1.2.5BASIC語(yǔ)言怎么樣
1.2.6與樹莓派相比
1.3MicroPython支持的硬件
1.3.1第一塊MicroPython開發(fā)板
1.3.2ESP8266/ESP32開發(fā)板
1.3.3BBC Micro: Bit開發(fā)板
1.3.4Adafruit和支持CircuitPython的一些開發(fā)板
1.4MicroPython編程體驗(yàn)
1.4.1REPL
1.4.2命令行工具
1.4.3MicroPython集成開發(fā)環(huán)境
1.4.4編寫MicroPython代碼
1.5MicroPython應(yīng)用場(chǎng)景
1.5.1驗(yàn)證新產(chǎn)品原型設(shè)計(jì)
1.5.2驗(yàn)證硬件系統(tǒng)
1.5.3編程教育
1.6本章小結(jié)
第2章準(zhǔn)備MicroPython開發(fā)環(huán)境
2.1MicroPython源碼
2.1.1獲得MicroPython的源代碼
2.1.2MicroPython源碼文件結(jié)構(gòu)分析
2.2基于Windows操作系統(tǒng)搭建MicroPython編譯環(huán)境
2.2.1安裝msys2基礎(chǔ)軟件包
2.2.2在msys2中安裝make
2.2.3在msys2中安裝Python
2.2.4在msys2中安裝GCC工具鏈
2.2.5在msys2中導(dǎo)入armnoneeabigcc
2.2.6編譯minimal工程驗(yàn)證編譯工具鏈
2.3硬件平臺(tái)介紹
2.3.1MM32F3微控制器
2.3.2PLUSF3270開發(fā)板
2.3.3F3270最小系統(tǒng)實(shí)驗(yàn)板
2.3.4POKTKE18F開發(fā)板
2.3.5MindSDK軟件包
2.4本章小結(jié)
第3章移植MicroPython最小工程
3.1MicroPython的最小工程
3.1.1minimal項(xiàng)目目錄下的文件
3.1.2從Makefile追溯編譯過程
3.2基于MM32F3微控制器移植minimal工程
3.2.1在lib目錄中添加MindSDK代碼
3.2.2在ports目錄中創(chuàng)建mm32f3項(xiàng)目目錄
3.3首次在MM32F3微控制器上運(yùn)行MicroPython
3.3.1下載可執(zhí)行文件到MM32F3微控制器
3.3.2驗(yàn)證及演示程序
3.4本章小結(jié)
第4章MicroPython類模塊實(shí)現(xiàn)綜述
4.1基本的類模塊封裝模式
4.1.1新建類模塊的源文件
4.1.2編輯Makefile
4.1.3編譯運(yùn)行
4.2本章小結(jié)
第5章新建Pin類模塊
5.1新建硬件外設(shè)類模塊框架
5.2定義machine_pin_obj_t結(jié)構(gòu)
5.3在構(gòu)造函數(shù)中實(shí)現(xiàn)返回實(shí)例化對(duì)象
5.4在構(gòu)造函數(shù)中實(shí)現(xiàn)多種傳參方式指定實(shí)例化對(duì)象
5.5print()和call()
5.5.1print()方法
5.5.2call()方法
5.5.3其他基礎(chǔ)類屬性函數(shù)
5.6實(shí)驗(yàn)
5.6.1向引腳輸出電平控制小燈亮滅
5.6.2讀取引腳電平獲取按鍵值
5.7本章小結(jié)
第6章移植utime類模塊
6.1utime類模塊簡(jiǎn)介
6.2MicroPython自帶的utime類實(shí)現(xiàn)
6.3對(duì)接硬件定時(shí)器相關(guān)的函數(shù)實(shí)現(xiàn)
6.4在MicroPython中添加utime類模塊
6.5實(shí)驗(yàn)
6.6本章小結(jié)
第7章移植SD卡類模塊實(shí)現(xiàn)文件系統(tǒng)
7.1VFS文件系統(tǒng)調(diào)用關(guān)系解析
7.1.1vfs_blockdev系列函數(shù)
7.1.2VFS統(tǒng)一文件系統(tǒng)API
7.2從文件系統(tǒng)中執(zhí)行Python腳本文件解析
7.2.1mp_lexer_new_from_file()
7.2.2mp_import_stat()和mp_builtin_open()
7.3對(duì)接硬件SD卡驅(qū)動(dòng)程序
7.4新建SDCard類模塊
7.4.1make_new()
7.4.2read_blocks() & write_blocks()
7.4.3ioctl()
7.4.4創(chuàng)建SDCard類模塊的類型對(duì)象
7.4.5添加SDCard類
7.4.6更新Makefile
7.5調(diào)整MicroPython內(nèi)核支持文件系統(tǒng)
7.5.1改寫main()函數(shù)支持文件系統(tǒng)
7.5.2配置mpconfigport.h文件
7.6啟用uos類模塊
7.7實(shí)驗(yàn)
7.7.1運(yùn)行來(lái)自SD卡的main.py
7.7.2在REPL中讀取main.py文件的內(nèi)容
7.7.3在文件系統(tǒng)中創(chuàng)建并寫入文件
7.7.4使用uos類模塊查看和刪除文件系統(tǒng)中的文件
7.8本章小結(jié)
第8章啟用浮點(diǎn)和數(shù)學(xué)計(jì)算模塊
8.1一些嘗試
8.2啟用浮點(diǎn)數(shù)和math數(shù)學(xué)計(jì)算模塊
8.2.1在mpconfigport.h文件中添加配置宏
8.2.2在Makefile中補(bǔ)充math函數(shù)的實(shí)現(xiàn)代碼
8.3僅啟用浮點(diǎn)數(shù)但不啟用math數(shù)學(xué)計(jì)算模塊
8.4啟用復(fù)數(shù)及cmath復(fù)數(shù)計(jì)算模塊
8.5實(shí)驗(yàn)
8.5.1支持新功能產(chǎn)生代碼量變化的統(tǒng)計(jì)
8.5.2使用math模塊進(jìn)行計(jì)算
8.5.3使用cmath模塊進(jìn)行計(jì)算
8.5.4實(shí)現(xiàn)FFT計(jì)算過程
8.6本章小結(jié)
第9章新建DAC類模塊
9.1分析已有移植項(xiàng)目的范例實(shí)現(xiàn)
9.1.1print()方法
9.1.2write()方法
9.1.3make_new()方法與mdac_obj_t結(jié)構(gòu)體
9.2設(shè)計(jì)新建DAC類模塊
9.2.1一些新需求
9.2.2machine_dac_obj_t 
9.2.3make_new()和init()
9.2.4write_u16()
9.2.5call()
9.2.6print()
9.2.7machine_dac_type
9.2.8向MicroPython中添加新建DAC類模塊
9.3實(shí)驗(yàn)
9.3.1使用DAC類模塊在引腳上輸出模擬電壓
9.3.2使用DAC輸出正弦波形
9.4本章小結(jié)
第10章新建ADC類模塊
10.1ADC類模塊的應(yīng)用模型
10.2ADC硬件外設(shè)模塊
10.2.1關(guān)于ADC硬件轉(zhuǎn)換器的觸發(fā)機(jī)制
10.2.2考慮轉(zhuǎn)換隊(duì)列的情況
10.3新建ADC類模塊
10.3.1machine_adc_obj_t
10.3.2make_new()
10.3.3init()
10.3.4read_u16()
10.3.5系統(tǒng)方法call()和print()
10.3.6創(chuàng)建machine_adc_type
10.3.7向MicroPython中集成ADC類模塊
10.4實(shí)驗(yàn)
10.4.1使用ADC類模塊測(cè)量引腳電壓
10.4.2ADC與DAC的聯(lián)合實(shí)驗(yàn)
10.5本章小結(jié)
第11章新建UART類模塊
11.1分析stream框架
11.1.1mp_stream_p_t結(jié)構(gòu)體類型
11.1.2stream對(duì)外提供的屬性方法
11.1.3stream內(nèi)部的適配函數(shù)
11.2提取移植接口并實(shí)現(xiàn)移植
11.2.1適配硬件相關(guān)的函數(shù)
11.2.2基于中斷機(jī)制的收發(fā)過程
11.2.3輪詢發(fā)送和中斷接收機(jī)制的接口函數(shù)
11.2.4其他必要的方法
11.2.5向MicroPython中集成UART類模塊
11.3實(shí)驗(yàn)
11.4本章小結(jié)
第12章新建SPI類模塊
12.1啟用machine_spi框架
12.2在移植項(xiàng)目中啟用SoftSPI類模塊
12.2.1softspi.c中的SPI總線驅(qū)動(dòng)
12.2.2用于產(chǎn)生波特率的軟件延時(shí)函數(shù)
12.2.3完成移植需要具體平臺(tái)實(shí)現(xiàn)的函數(shù)
12.2.4向machine類中添加SoftSPI類模塊
12.3創(chuàng)建硬件SPI類模塊
12.3.1machine_hw_spi_obj_t
12.3.2make_new()
12.3.3transfer()
12.3.4print()
12.3.5machine_hw_spi_type
12.3.6向machine類中添加硬件SPI類模塊
12.4實(shí)驗(yàn)
12.4.1顯示SPI信息
12.4.2使用SPI發(fā)送過程輸出波形
12.4.3使用SPI讀入數(shù)據(jù)
12.4.4使用SPI類訪問W25Q64
12.5本章小結(jié)
第13章新建I2C類模塊
13.1通用I2C類模塊框架machine_i2c
13.2軟件I2C類模塊SoftI2C
13.3硬件I2C類模塊I2C
13.3.1transfer_single()
13.3.2machine_hw_i2c_type
13.3.3make_new()
13.3.4print()
13.3.5集成硬件I2C模塊到machine模塊中
13.4實(shí)驗(yàn)
13.4.1PLUSF3270
13.4.2POKTKE18F
13.5本章小結(jié)
第14章新建PWM類模塊
14.1參考范例
14.2創(chuàng)建硬件PWM模塊
14.2.1machine_pwm_obj_t
14.2.2make_new()
14.2.3init()和deinit()
14.2.4freq()
14.2.5duty()
14.2.6print()
14.2.7向machine類中添加PWM類模塊
14.3實(shí)驗(yàn)
14.3.1使用PWM類模塊輸出基本波形
14.3.2動(dòng)態(tài)改變占空比
14.3.3動(dòng)態(tài)改變頻率
14.4本章小結(jié)
第15章新建Timer類模塊
15.1參考范例
15.2創(chuàng)建硬件定時(shí)器Timer類模塊
15.2.1machine_timer_obj_t
15.2.2make_new()
15.2.3print()
15.2.4init()
15.2.5deinit()
15.2.6del()
15.2.7實(shí)現(xiàn)硬件定時(shí)器中斷服務(wù)
15.3實(shí)驗(yàn)
15.3.1通過定時(shí)器中斷控制小燈閃爍
15.3.2周期性采集ADC信號(hào)
15.4本章小結(jié)
第16章使用mem類方法
16.1mem類方法的使用
16.2探究數(shù)組方法的實(shí)現(xiàn)
16.3一些Python驅(qū)動(dòng)外設(shè)的用例
16.3.1訪問微控制器的設(shè)備唯一編號(hào)
16.3.2使用COMP外設(shè)模塊
16.3.3使用靈活高精度PWM
16.4本章小結(jié)
第17章使用Thonny IDE開發(fā)MicroPython
17.1Thonny簡(jiǎn)介
17.2改寫MicroPython代碼適配Thonny
17.3在Thonny中調(diào)試MicroPython
17.3.1在Shell中執(zhí)行Python腳本
17.3.2在代碼編輯區(qū)編寫代碼并運(yùn)行
17.4實(shí)現(xiàn)下載模式和調(diào)試模式
17.5本章小結(jié)
附錄A圖索引
后記
 

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)