开箱
首先非常感谢面包板社区让我申请到这块CMS8S6990血氧仪开发板,虽说名字是血氧仪开发板,其实本质上是一个8位的51单片机。其中的开发也都是依据51单片机方式开发的。
搭建环境
首先我们需要下载个KEIL 5,之后进行安装。然后进入我们开发板的官网,进行下载相关芯片包。别忘了进行debug配置,否则不能下载。
软件程序
本设计主要利用定时器,实现LED灯的定时亮灭。
主函数
- uint32_t Systemclock = 24000000;
- int main(void)
- {
- TMR1_Config();
- GPIO_SET_MUX_MODE(P05CFG, GPIO_MUX_GPIO);
- GPIO_ENABLE_OUTPUT(P0TRIS, GPIO_PIN_5);
- P05 =0;
- while(1)
- {
- ;
- }
- }
- #include "demo_timer.h"
- void TMR1_Config(void)
- {
- /*
- (1)设置Timer的运行模式
- */
- TMR_ConfigRunMode(TMR1, TMR_MODE_TIMING,TMR_TIM_16BIT);
- /*
- (2)设置Timer 运行时钟
- */
- TMR_ConfigTimerClk(TMR1, TMR_CLK_DIV_12); /*Fsys = 24Mhz,Ftimer = 2Mhz,Ttmr=0.5us*/
- /*
- (3)设置Timer周期
- */
- TMR_ConfigTimerPeriod(TMR1, (65536-200)>>8, 65536-200); // 200*0.5us = 100us,递增计数
- /*
- (4)开启中断
- */
- TMR_EnableOverflowInt(TMR1);
- /*
- (5)设置Timer中断优先级
- */
- IRQ_SET_PRIORITY(IRQ_TMR1,IRQ_PRIORITY_LOW);
- IRQ_ALL_ENABLE();
- /*
- (6)开启Timer
- */
- TMR_Start(TMR1);
- }
定时器中断
void Timer1_IRQHandler(void) interrupt TMR1_VECTOR
{
P05 = ~P05;
TH1 =(65536-200)>>8 ;
TL1 = 65536-200;
}
实验结果
总结
总体上说,这块开发板还是一款非常优秀的单片机。很适合进行日常的开发与使用。
欢迎点击
论坛> >机器人/工业电子> >工业电子与自动化
https://mbb.eet-china.com/forum/topic/85437_1_1.html