首頁(yè) > 評(píng)測(cè) > 引腳連錯(cuò)了?沒關(guān)系重映射一下就好了——Holychip HC89F003評(píng)測(cè)
引腳連錯(cuò)了?沒關(guān)系重映射一下就好了——Holychip HC89F003評(píng)測(cè)
- [導(dǎo)讀]
- 雖然16位單片機(jī)已經(jīng)被超低功耗的32位單片機(jī)擠壓的幾乎要消失殆盡,而8位單片機(jī)卻一直憑借輕盈小巧和價(jià)格低廉的優(yōu)勢(shì)占據(jù)市場(chǎng)。目前8位單片機(jī)皆根據(jù)各種各種特定應(yīng)用而推出了不同的增強(qiáng)型,今天給大家評(píng)測(cè)的來(lái)自Holychip(芯圣)的HC89F003則是以引腳的重映射功能著稱。雖然很多MCU均有重映射的功能,不過像HC89F003這樣絕大多數(shù)引腳皆可重映射的并不多見。
1 產(chǎn)品簡(jiǎn)介
HC89F003 是一顆采用高頻低功耗 CMOS 工藝設(shè)計(jì)開發(fā)的增強(qiáng)型 8 位單片機(jī),內(nèi)部有 16K Bytes FLASH 程序存儲(chǔ)器,256 Bytes IRAM 和 256 Bytes XRAM,18 個(gè)雙向 I/O 口,5 個(gè) 16 位定時(shí)器/計(jì)數(shù)器,3 組 12 位帶死區(qū)控制互補(bǔ) PWM,1 個(gè) 8 位 PWM,2 個(gè) UART,1 個(gè) SPI,16 個(gè)外部中斷,8+2 路 12 位ADC,四種系統(tǒng)工作模式(正常、低頻、掉電和空閑)和 16 個(gè)中斷源。
在單片機(jī)上用到很多的中斷。在這一款芯片上足夠滿足絕大部分的產(chǎn)品設(shè)計(jì)。
Hc89f003具有:
16個(gè)中斷源
4級(jí)中斷優(yōu)先級(jí)
16個(gè)外部中斷
重點(diǎn)來(lái)了:一般我們的單片機(jī),比如像51,比較少重映射功能的,比如stm32,他們的重映射功能對(duì)應(yīng)的引腳基本都有固定的引腳。但是,hc89f003不一樣了,他絕大部分引腳都可以重映射,比如P00可以作為io口,可以重映射為usart_tx、usart_rx、iic、spi等等等等。也就是說(shuō),設(shè)計(jì)板子的時(shí)候不用害怕硬件連接錯(cuò)誤,只要連接上了,基本可以實(shí)現(xiàn)重映射功能。
Datasheet給出的說(shuō)明:絕大多數(shù)復(fù)用端口可以映射到任意 I/O 口,但 PWM 故障檢測(cè)腳、ADC 輸入、INT0-15 功能口等除外。
注意的是:多個(gè)輸出映射到一個(gè)端口上時(shí),只能有一個(gè)輸出有效。端口重映射類似中斷一樣還有優(yōu)先級(jí)的。
*下面是默認(rèn)的優(yōu)先級(jí):
比如:
CLKO_MAP 配置為 0x01 選擇 P0.1 口作為 CLKO 的輸出口,T4_MAP 也配置為 0x01,這個(gè)時(shí)候硬件會(huì)按上面的優(yōu)先級(jí),P0.1 將配置為 CLKO 的輸出口,而 T4_MAP 的配置無(wú)效。
當(dāng)所有的端口映射控制寄存器都不等于0x01時(shí),即所有的功能口都不選擇P0.1作為輸入輸出口,此時(shí)這個(gè)端口的輸出就是 P0 端口數(shù)據(jù)寄存器的第 1 位。
輸入可以配置為多個(gè)功能從一個(gè) PAD 引腳進(jìn)入,比如:
T0_MAP 配置為 0x23,則選擇 P2.3 作為 T0 的輸入口,T5_MAP 也配置為 0x23,這樣從 P2.3 端口進(jìn)入的信號(hào)同時(shí)作用于 T3 和 T5。
將 TXD 和 RXD 都配置到一個(gè)端口上時(shí),并且此端口設(shè)置為輸出,則 TXD 和 RXD 將內(nèi)部連接起來(lái)。
在輸入時(shí),無(wú)論端口是什么功能,讀端口數(shù)據(jù)寄存器都讀芯片引腳上值。
對(duì)于重映射功能有疑問的請(qǐng)仔細(xì)閱讀官方datasheet。http://www.holychip.cn/uploadfiles/release/preview/HC89F003_003P_SPEC_Ver1.03.pdf(畢竟是中國(guó)芯圣產(chǎn)的,datasheet閱讀起來(lái)毫無(wú)壓力,以前看英文的,讓我這種四級(jí)都沒過的孩子頭都大了)
HC89F003 使用注意事項(xiàng) :(官方datasheet的重要說(shuō)明,使用芯片時(shí)一定要認(rèn)真看datasheet)
1、 為保證系統(tǒng)的穩(wěn)定性,必須在 VDD 和 GND 之間接一電容(容值須等于或大于 0.1μF)。(對(duì)于這點(diǎn),一般我們用芯片的時(shí)候都會(huì)這樣子做,加個(gè)電容)
2、 為保證系統(tǒng)的上電穩(wěn)定性,建議客戶程序在系統(tǒng)產(chǎn)生 POR 復(fù)位后進(jìn)行一次重讀代碼選項(xiàng)的軟復(fù)位操作。官方說(shuō)明這項(xiàng)已經(jīng)改進(jìn)(我覺得還是很OK的可以去官網(wǎng)下載新版的datasheet)
3、 當(dāng)使用 ADC 模塊時(shí),不論參考電壓選擇的是什么,系統(tǒng)工作電壓 VDD 必須高于 2.7V。(參考電壓一般為GND,這個(gè)vdd一般為3.3v)
4、 外部中斷在使用查詢方式時(shí),無(wú)法正常清除中斷標(biāo)志位?梢酝ㄟ^先禁止中斷使能位再清除中斷標(biāo)志,在完成清除中斷標(biāo)志位后再使能外部中斷來(lái)進(jìn)行正常的外部中斷產(chǎn)生查詢。使用中斷方式時(shí),無(wú)該問題。
5、 當(dāng)用戶使用 T3 計(jì)數(shù)時(shí)鐘源選擇端口輸入外部時(shí)鐘,應(yīng)使 TR3 和 T3CLKS[1:0]的配置同時(shí)進(jìn)行(即用一條指令完成配置)。(個(gè)人感覺比較奇怪,但是還是可以按照他的做的。他說(shuō)一條指令就一條指令吧。)
介紹了那么多,是時(shí)候上點(diǎn)開箱圖了。
國(guó)慶回家前接到板子,小的讓我出乎意料啊,感謝21ic小喇叭,開心。
打開之后可見一個(gè)開發(fā)板,一個(gè)51link以及一根數(shù)據(jù)線。
初次見到51—link,有點(diǎn)小小的驚訝。哈哈哈,怪我見識(shí)不夠。。。。得好好努力了。
打開看看51link里面是什么東西,一看,嚇一跳,原來(lái)是stm32f1系列芯片。
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評(píng)論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開放投稿
- NRF52810藍(lán)牙數(shù)字耳機(jī)找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開發(fā)
預(yù)算:¥1100000015小時(shí)前
- 12V汽車啟動(dòng)電源項(xiàng)目BMS設(shè)計(jì)
預(yù)算:¥50000023小時(shí)前
- 數(shù)據(jù)可視化軟件 開發(fā)
預(yù)算:¥5000023小時(shí)前
- PLC項(xiàng)目調(diào)試修改
預(yù)算:¥100001天前
- 起動(dòng)電機(jī)控制器開發(fā)
預(yù)算:¥1100001天前