首页 > 评测 > 引脚连错了?没关系重映射一下就好了——Holychip HC89F003评测
引脚连错了?没关系重映射一下就好了——Holychip HC89F003评测
- [导读]
- 虽然16位单片机已经被超低功耗的32位单片机挤压的几乎要消失殆尽,而8位单片机却一直凭借轻盈小巧和价格低廉的优势占据市场。目前8位单片机皆根据各种各种特定应用而推出了不同的增强型,今天给大家评测的来自Holychip(芯圣)的HC89F003则是以引脚的重映射功能著称。虽然很多MCU均有重映射的功能,不过像HC89F003这样绝大多数引脚皆可重映射的并不多见。
return SUCCESS;
}
else
{//使用高频作为系统时钟
if((OscClock == CLK_OSC_32MHZ)&&(CLKDIV < CLK_CLKDIV_RESET_VALUE))return ERROR;//如果最终CPU时钟高于20M,则配置失败
CLKSWR = (CLKSWR&(~CLK_SYS_SEL))|CLK_RC32MHZ; //启动内部高频
while((CLKSWR&CLK_SYS_STA)!=CLK_RC32MHZ_FLAG); //等待高频晶振起振
OscClkBuf = CLKDIV;
CLKDIV = 2; //保证CPU工作在20M以下,
CLKSWR = OscClock|(CLKSWR&(~CLK_RC32M_DIV)); //设置RC32M分频系数
CLKDIV = OscClkBuf; //恢复CPU分频系数
return SUCCESS;
}
}
HC89F003 单片机系统时钟有 2 种时钟源可选:内部高频 RC 时钟(32 MHz)和内部低频 RC 时钟(44KHz)。其中,内部高频 RC 在-40°C ~+85°C 范围误差不超过 1%。选择后的系统时钟(如果选择的是内部高频 RC,则经 RC32M_DIV[1:0]分频后的时钟)记做 osc_clk,其频率为 F osc ,周期为 T osc ,
主要用于外设模块,osc_clk 可以进行 1-255 之间任意值的分频,分频后的时钟记做 CPU 时钟,其频率为 F cpu ,周期为 T cpu 。
CPU 最高可以运行在 20MHz 频率下,如果所选时钟源频率高于 20MHz,需要对其进行分频,使CPU 时钟频率等于或低于 20MHz。
内部低频 RC(RC44K)输出的时钟记做 wdt_clk,用于看门狗定时器的计数,也可以用于系统时钟;内部高频 RC(RC32M)输出的时钟记做 rc32m_clk,可以进行 1/2/4/8 分频。
系统初始化完成就能对芯片的引脚进行操作了。。。。
然后就是GPIO的初始化函数了,芯圣对我们还是很好的,已经集成库函数了,直接调用就OK。
一句代码的事情:
GPIO_Init(GPIOT0,GPIO_PIN_2,GPIO_MODE_IN_PU); //将P02端口设置为上拉电阻模式
库函数的使用方法很简单啊,假如我想让P00设置为推挽输出模式。。。
直接将 GPIO_PIN_2变为GPIO_PIN_0。
GPIO_MODE_IN_PU变为GPIO_MODE_OUT_PP
GPIO_Init(GPIOT0,GPIO_PIN_0, GPIO_MODE_OUT_PP); //P00设置为推挽输出模式
/**
* @说明 对一组端口中的一个或多个IO设置模式
* @参数 GPIOx : 初始化的端口组(x:0-2)
* GPIOT0 //端口0组
* GPIOT1 //端口1组
* GPIOT2 //端口2组
* @参数 GPIO_PIN : 初始化的端口号
* GPIO_PIN_0 //选择端口0
* GPIO_PIN_1 //选择端口1
* GPIO_PIN_2 //选择端口2
* GPIO_PIN_3 //选择端口3
- 本文系21ic原创,未经许可禁止转载!
网友评论
- 联系人:巧克力娃娃
- 邮箱:board@21ic.com
- 我要投稿
-
欢迎入驻,开放投稿
-
人均百万?英伟达中国员工收入曝光! 2024-08-29
-
《黑神话:悟空》玩家硬盘升级攻略:提升游戏体验,畅享3A大作 2024-08-29
-
数睿数据参加《系统与软件工程 低代码开发平台通用技术要求》国家标准编制 2024-08-29
- NRF52810蓝牙数字耳机找人定制
预算:¥30005天前
- 125KW模块式PCS软硬件外包开发
预算:¥1100000015小时前
- 12V汽车启动电源项目BMS设计
预算:¥50000023小时前
- 数据可视化软件 开发
预算:¥5000023小时前
- PLC项目调试修改
预算:¥100001天前
- 起动电机控制器开发
预算:¥1100001天前