python控制modem的at指令_硬件设计MCU架构+Python命名空间和作用域
CISC結(jié)構(gòu)的單片機(jī)
????其數(shù)據(jù)線和指令線分時(shí)復(fù)用,稱為馮-諾伊曼結(jié)構(gòu)
優(yōu)點(diǎn):指令豐富,功能較強(qiáng),但確定取指令和取數(shù)據(jù)不能同時(shí)進(jìn)行,速度受限,且價(jià)格也很高;屬于CISC結(jié)構(gòu)的單片機(jī)有Intel8051系列、Atmel的AT89系列、臺(tái)灣Winbond W78系列。適用于控制關(guān)系較復(fù)雜的場(chǎng)合,如通訊產(chǎn)品、工業(yè)控制產(chǎn)品應(yīng)采用CISC單片機(jī)。
RISC結(jié)構(gòu)單片機(jī)
????采用精簡(jiǎn)指令集RISC的單片機(jī)數(shù)據(jù)線和指令線分離,具有所謂的哈佛結(jié)構(gòu)
RISC結(jié)構(gòu)單片機(jī):速度快,程序存儲(chǔ)器利用率高,集成度高。但指令較為簡(jiǎn)單,適用于控制較簡(jiǎn)單的場(chǎng)所。
STM32系列從應(yīng)用上可以分為:超低功耗型、主流型、高性能型
單片機(jī)選型原則:
適用性原則
可購(gòu)買性原則
可開發(fā)性原則
還需符合產(chǎn)品的原則有:可靠性、實(shí)用性、易于維護(hù),產(chǎn)品生命周期要求
通用資源:
①通信外設(shè):USART、SPI、I2C
②定時(shí)器:Muliple general—purpose timers
③直接內(nèi)存存取:Muliplt DMA
④看門狗和實(shí)時(shí)時(shí)鐘:2x watchdogs、RTC
⑤PLL和時(shí)鐘電路:Integrated regulator PLL and clock circuit
⑥數(shù)模轉(zhuǎn)換
⑦模數(shù)轉(zhuǎn)換
⑧內(nèi)部振蕩器
⑨內(nèi)部溫度傳感器
2Python-命名空間和作用域學(xué)習(xí)地址:https://www.runoob.com/python3/python3-namespace-scope.html
????1)命名空間
????命名空間(Namespace)是從名稱到對(duì)象的映射,大部分的命名空間都是通過 Python 字典來實(shí)現(xiàn)的。
命名空間提供了在項(xiàng)目中避免名字沖突的一種方法。各個(gè)命名空間是獨(dú)立的,沒有任何關(guān)系的,所以一個(gè)命名空間中不能有重名,但不同的命名空間是可以重名而沒有任何影響。我們舉一個(gè)計(jì)算機(jī)系統(tǒng)中的例子,一個(gè)文件夾(目錄)中可以包含多個(gè)文件夾,每個(gè)文件夾中不能有相同的文件名,但不同文件夾中的文件可以重名。
一般有三種命名空間:
內(nèi)置名稱(built-in names), Python 語言內(nèi)置的名稱,比如函數(shù)名 abs、char 和異常名稱 BaseException、Exception 等等。
全局名稱(global names),模塊中定義的名稱,記錄了模塊的變量,包括函數(shù)、類、其它導(dǎo)入的模塊、模塊級(jí)的變量和常量。
局部名稱(local names),函數(shù)中定義的名稱,記錄了函數(shù)的變量,包括函數(shù)的參數(shù)和局部定義的變量。(類中定義的也是)
命名空間查找順序:
假設(shè)我們要使用變量 runoob,則 Python 的查找順序?yàn)?#xff1a;局部的命名空間去 -> 全局命名空間 -> 內(nèi)置命名空間。
如果找不到變量 runoob,它將放棄查找并引發(fā)一個(gè) NameError 異常:
NameError: name 'runoob' is not defined。
命名空間的生命周期:
命名空間的生命周期取決于對(duì)象的作用域,如果對(duì)象執(zhí)行完成,則該命名空間的生命周期就結(jié)束。
因此,我們無法從外部命名空間訪問內(nèi)部命名空間的對(duì)象。
#%全局變量和局部變量#首先定義一個(gè)全局變量total=0 def sum(arg1,arg2): #參數(shù)求和 total=arg1+arg2 #此處total為局部變量 print('函數(shù)內(nèi)的為局部變量:',total) return total#調(diào)用sum函數(shù)sum(10,20)print('函數(shù)外的為全局變量:',total)#global和nonlocal關(guān)鍵字num=1def fun1(): global num #使用global關(guān)鍵字進(jìn)行聲明 print(num) num=123 print(num)fun1()#此時(shí)局部變量對(duì)外面的全局變量進(jìn)行了修改print(num)#nonlocal關(guān)鍵字的使用def outer(): num=10 def inner(): nonlocal num #nonlocal關(guān)鍵字的聲明 num=100 print(num) inner() print(num)outer()日工作記錄公眾號(hào)ID:gh_dc943d9de6b5掃碼關(guān)注最新動(dòng)態(tài)總結(jié)
以上是生活随笔為你收集整理的python控制modem的at指令_硬件设计MCU架构+Python命名空间和作用域的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 年龄层统计SQL
- 下一篇: python random.randin