通用同步/異步收發(fā)器采用一個(gè)硬件,支持兩種通用串行總線接口模式(msp430f16x支持三種,另外一種是I2C),UART接口(異步模式),SPI接口(同步模式)。我們可以根據(jù)寄存器UxTCL的SYNC來選擇USART的工作模式。在MSP430F149中有兩個(gè)相同的串行總線接口,可以分別或者同事配置成兩種模式。
——摘自《MSP430基礎(chǔ)與實(shí)踐》
這次先介紹通用異步串行接口UART;
figure1. USART(in UART modem)
那大致可以看出他就分為以下幾個(gè)部分:
>串口控制器:UxCTL
>接受控制器:UxRCTL
>發(fā)送控制器:UxTCTL
>波特率控制器:UxBR0 UxBR1 UxMCTL
>收發(fā)使能控制器:UxME
>收發(fā)中斷控制器:UxIE
>標(biāo)志寄存器:UxIFG
figure 2. Flow Chart of USART Initializing
USART Control Register:
figure 3. USART Control Register
可見SWRST默認(rèn)是為1:意思是USART默認(rèn)為Reset狀態(tài),所以我們在設(shè)置完,只有把SWRST置為0才能使能UART或SPI或I2C;
感覺說這些都是多余浪費(fèi)時(shí)間的,既然是深入研究,那么我們就做點(diǎn)別人很少研究的東西!
關(guān)于波特率的設(shè)置:
figure 4. Baud Rate
波特率的設(shè)置,datasheet上已經(jīng)給出了解釋!可能大家對UxBR0、UxBR1的認(rèn)識(shí)已經(jīng)沒有什么問題了!重要是UxMCTL,我們先來看看UxMCTL的寄存器:
figure 5. Register of UxMCTL
mi : Data of each corresponding modulation bit (1 or 0);
所以不管你把那個(gè)置為1,只要他們的和與8相除,商為接近你想要得到的小數(shù)的值即可!
舉個(gè)例子:MCLK = 8000 000Hz, Baud Rate = 9600;
UxBR + (m0+m1+ ... + m7)/8 = 8000 0000/9600 = 833 + 0.33333
UxBR 設(shè)為 833 不用說了,8 X 0.3333 = 2.666 ≈ 3;那么m0~m7里面只要有3個(gè)1就可以了,所以為了方便期間我們用移位的方法:
unsigned char temp = 0;
for(i=0; i<3; i++)
{
temp = temp <<1;
temp |= 1;
}
由于串口通信比較簡單,就沒什么好多說的了!
實(shí)例代碼:
#include #include "msp430_lib.h" #define BUFF_SIZE 128 typedef struct { int recv_len; unsigned char recv_buff[BUFF_SIZE]; }UART_RECV; UART_RECV u_recv; void uart0_init(int baud_rate) { unsigned char i,temp; // 設(shè)為復(fù)位模式,方便多次初始化 U0CTL |= SWRST; // 8個(gè)bit U0CTL |= CHAR; // 這里波特率設(shè)置 U0BR1 = (unsigned int)0xff&((NOW_SYSCLK/baud_rate)>>16); U0BR0 = (unsigned int)(NOW_SYSCLK/baud_rate)&0xff; i = (NOW_SYSCLK - baud_rate*(unsigned int)(NOW_SYSCLK/baud_rate))*8/baud_rate; while(i){ i--; temp = temp << 1; temp |= 1; } U0MCTL = temp; // 進(jìn)入標(biāo)準(zhǔn)模式 U0CTL &= ~SWRST; // 使能發(fā)送和接收 U0ME |= UTXE0 + URXE0; // 使能接收中斷 U0IE |= URXIE0; // 配置PIN為特殊功能模式 P3SEL |= BIT7 + BIT6; // 使能全局中斷 _EINT(); u_recv.recv_len = 0; } /* * 數(shù)據(jù)發(fā)送函數(shù) */ void uart_senddata(unsigned char byte) { while(!(U0IFG & UTXIFG0)); U0TXBUF = byte; } // 中斷處理函數(shù) #pragma vector=UART0RX_VECTOR __interrupt void uart_rxirq() { u_recv.recv_buff[u_recv.recv_len++] = U0RXBUF; } 中斷數(shù)據(jù)接收的地方,我創(chuàng)建了一個(gè)緩沖區(qū),用了一個(gè)全局變量!方便一下子接收很多數(shù)據(jù)!
上一篇:第一頁
下一篇:msp430使用OLED實(shí)現(xiàn)數(shù)字鐘
推薦閱讀
史海拾趣
隨著公司規(guī)模的擴(kuò)大,Electronic-Bauteile Goerlitz GmbH公司意識(shí)到供應(yīng)鏈管理的重要性。公司通過優(yōu)化供應(yīng)鏈管理,實(shí)現(xiàn)了原材料采購、生產(chǎn)、物流等各個(gè)環(huán)節(jié)的協(xié)同作業(yè)。這不僅提高了生產(chǎn)效率,降低了成本,還確保了產(chǎn)品質(zhì)量的穩(wěn)定性和交貨期的準(zhǔn)確性。這些努力使得公司在競爭激烈的市場中保持了良好的競爭力。
到了1955年,F(xiàn)air Rite的產(chǎn)品開始被廣泛應(yīng)用于娛樂電子行業(yè)。公司成功開發(fā)出適合電視和無線電設(shè)備使用的鐵氧體元件,為當(dāng)時(shí)的家庭娛樂生活提供了可靠的技術(shù)支持。隨著技術(shù)的不斷進(jìn)步和市場需求的增長,F(xiàn)air Rite逐漸擴(kuò)大了產(chǎn)品線,并開始進(jìn)入其他領(lǐng)域。
近年來,DYMO公司越來越注重環(huán)保和可持續(xù)發(fā)展。公司采用環(huán)保材料制造產(chǎn)品,并推廣循環(huán)使用和回收計(jì)劃。此外,DYMO公司還積極參與各種環(huán)?;顒?dòng),致力于減少生產(chǎn)過程中的碳排放和廢棄物排放。這些舉措不僅提高了DYMO公司的社會(huì)形象,也為其未來的發(fā)展奠定了更加堅(jiān)實(shí)的基礎(chǔ)。
Avery Dennison在追求商業(yè)成功的同時(shí),也積極履行社會(huì)責(zé)任,致力于可持續(xù)發(fā)展。公司注重環(huán)保和節(jié)能,通過采用環(huán)保材料和工藝、推廣循環(huán)經(jīng)濟(jì)等方式,降低生產(chǎn)過程中的環(huán)境影響。此外,Avery Dennison還積極參與社會(huì)公益事業(yè),支持教育、扶貧等項(xiàng)目,為社會(huì)和諧與發(fā)展貢獻(xiàn)力量。
這些故事展示了Avery Dennison在電子行業(yè)中的發(fā)展歷程和成就,體現(xiàn)了公司不斷創(chuàng)新、追求卓越的精神。未來,隨著科技的不斷進(jìn)步和市場需求的不斷變化,Avery Dennison將繼續(xù)保持創(chuàng)新活力,為客戶和社會(huì)創(chuàng)造更多價(jià)值。
ELEKTRO-PLAST NASIELSK公司成立于上世紀(jì)九十年代,當(dāng)時(shí)正值電子行業(yè)蓬勃發(fā)展的時(shí)期。創(chuàng)始人敏銳地察覺到塑料材料在電子元器件制造中的潛力,決定專注于研發(fā)和生產(chǎn)塑料外殼的電子元器件。然而,初創(chuàng)時(shí)期面臨資金緊張、技術(shù)瓶頸和市場接受度低的挑戰(zhàn)。創(chuàng)始人通過不懈努力,成功研發(fā)出具有競爭力的產(chǎn)品,并通過參加行業(yè)展會(huì)和建立合作伙伴關(guān)系,逐漸打開了市場。
AF International的創(chuàng)立可以追溯到上世紀(jì)末,當(dāng)時(shí)創(chuàng)始人張先生憑借對電子行業(yè)的敏銳洞察和深厚技術(shù)背景,決定創(chuàng)辦一家專注于電子元器件研發(fā)與生產(chǎn)的公司。張先生深知技術(shù)創(chuàng)新是行業(yè)發(fā)展的關(guān)鍵,因此在公司創(chuàng)立之初就投入大量資源用于研發(fā),逐步開發(fā)出了一系列具有競爭力的產(chǎn)品。憑借這些產(chǎn)品,AF International在電子行業(yè)中逐漸嶄露頭角,贏得了客戶的信賴和市場的認(rèn)可。
招資深單片機(jī)開發(fā)工程師 從事儀器儀表行業(yè) 以技術(shù)股的形式入股作為股東 具體事項(xiàng)細(xì)談 聯(lián)系人潘先生18967501983… 查看全部問答∨ |
|
#7 Error Floating Input Pins On Net NetVA1_3 Pin 電動(dòng)車.Sch(VA1-3 @700,840) Pin 電動(dòng)車.Sch(VB1-1 @700,800) #10 Error Floating Input Pins On Net NetVA2_3 Pin 電動(dòng)車.Sch(VA2-3 @810,840) Pin 電動(dòng)車.Sch( ...… 查看全部問答∨ |
|
請問各位高手 在PB42下改動(dòng)了public 需要怎么編譯?? 謝謝 剛轉(zhuǎn)到CE42上不了解這個(gè) CE50貌似build&sysgen就可以 但是CE42上沒有 謝謝大家!… 查看全部問答∨ |
|
當(dāng)我在右擊打印機(jī)點(diǎn)屬性里,選擇了比如A4紙,那這個(gè)信息是存放在哪里的呢,是注冊表還是ini文件還是其它什么地方,具體什么地方?… 查看全部問答∨ |
目前我在一家北京的公司搞嵌入,有一些bootloader,kernel,驅(qū)動(dòng)方面的經(jīng)驗(yàn)。希望大家能一起討論, 共同進(jìn)步。 我的msn:forever_xf123@hotmail.com… 查看全部問答∨ |
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- 利用STM32MP1和STM32MP2在嵌入式 Linux 平臺(tái)上部署有效的安全保護(hù)機(jī)制
- 超小但強(qiáng)大:MCU 的小尺寸封裝和集成如何幫助優(yōu)化空間受限的設(shè)計(jì)
- 德州儀器推出全球超小型 MCU,助力微型應(yīng)用創(chuàng)新
- Microchip推出電動(dòng)兩輪車(E2W)生態(tài)系統(tǒng),加速電動(dòng)出行創(chuàng)新
- 意法半導(dǎo)體推出STM32U3微控制器,面向遠(yuǎn)程、智能和可持續(xù)應(yīng)用,拓展超低功耗系列創(chuàng)新
- (一) ECloudIDE入門STM32-CubeMX工程創(chuàng)建與導(dǎo)入
- (二)ECloudIDE入門STM32-官方寄存器版例程使用
- Simulink STM32F407VGT6實(shí)現(xiàn)硬件在環(huán)
- openharmony:hilog_lite組件移植
- 英偉達(dá)芯片路線圖分析:Rubin GPU、Rubin Ultra 及 Feynman 架構(gòu)
- 自研芯片獲新進(jìn)展,理想純電車型能否靠AI「翻身」?
- 新能源汽車智能座艙技術(shù)
- 今年落地L3級自動(dòng)駕駛!放手一搏的廣汽,能否逆風(fēng)翻盤?
- 英偉達(dá)的開源人形機(jī)器人通用模型,IsaacGR00TN1會(huì)帶來什么?
- 2025固態(tài)電池全景圖:方興未艾,技術(shù)競逐
- 2025年NVIDIA自動(dòng)駕駛安全報(bào)告
- 地平線2024年報(bào):中國智能駕駛芯片龍頭破局!
- 從長城APP奔潰聊聊汽車是否應(yīng)過度智能化?
- DeepSeek動(dòng)搖不了英偉達(dá)的“芯片帝國”?
- Microchip有獎(jiǎng)問答 | 新品 MCU 獨(dú)立于內(nèi)核的外設(shè)(CIP)技術(shù)解密
- LPC4370重磅來襲 有獎(jiǎng)問答贏好禮!
- 4月25日上午10:00-11:30 ADI與您相約 TOF (Time Of Flight) 技術(shù)介紹及產(chǎn)品應(yīng)用 有獎(jiǎng)直播
- Dig八月 EEWORLD為你做專題!
- 有獎(jiǎng)直播|物聯(lián)網(wǎng)時(shí)代的典型應(yīng)用
- 是德科技(Keysight)有獎(jiǎng)?wù)魑?,下筆贏示波器啦!
- 【EEWORLD第三十八屆】2012年05月社區(qū)明星人物揭曉!
- MPS探索營 “正經(jīng)玩技術(shù)”!創(chuàng)意征集 | 解鎖鋰電池充電的無限玩法!
- 2024年STM32巡回研討會(huì)即將開啟!(9月3日-9月13日)
- IBM展示世界最小電腦,除了小還有啥用?
- 單片機(jī)開發(fā) --- 8X8LED點(diǎn)陣
- 北京郊區(qū)試點(diǎn)掃碼乘坐公交,可享半價(jià)優(yōu)惠
- 基于51單片機(jī)的秒表和數(shù)顯時(shí)鐘
- 家庭影院新時(shí)代,優(yōu)派PX727-4K獲得Projector Central編輯選擇獎(jiǎng)
- 汽車電子中的ESD保護(hù)應(yīng)該怎樣來設(shè)計(jì)
- MEMS傳感器怎樣提高汽車電子的性能
- 汽車系統(tǒng)的TCU-ECU安全應(yīng)該如何來設(shè)計(jì)
- 為什么中、日、韓都大力支持氫燃料電池汽車?
- Regulus Cyber發(fā)布純軟件網(wǎng)絡(luò)安全解決方案 保護(hù)汽車GPS免受欺騙攻擊
- 復(fù)旦Nios教材
- 嵌入式技術(shù)在MP3播放器中的應(yīng)用
- 誰有RT12864-S液晶屏的資料啊,發(fā)給我謝謝了
- 滿足汽車高溫應(yīng)用環(huán)境要求的傳感器接口IC
- MSP430FR5739如何通過I2C讀寫保存數(shù)據(jù)問題
- 【平頭哥RVB2601創(chuàng)意應(yīng)用開發(fā)】開箱+詳細(xì)圖片分享
- MSP430采樣與定時(shí)器的問題
- 寄存器讀寫問題
- [轉(zhuǎn)]如何在對電橋傳感器進(jìn)行電路設(shè)計(jì)時(shí)避免陷入困境
- 參與即有好禮,2014 TI MSP430 技術(shù)研討會(huì)火熱報(bào)名中!