历史上的今天
今天是:2024年10月19日(星期六)
2021年10月19日 | stm8s单片机内部定时器2使用
2021-10-19 来源:eefocus
stm8s的中文手册里面写TIM2 16位向上计数是错误的。
stm8s定时易于使用,首先设定定时器的时钟频率,知道了定时器的时钟周期T,那么定时时间Tn就确定了,即 Tn = T * ARR(自动装载数据)。
程序如下:
1、单片机时钟设定:
//fmaster=fcpu=2MHz
CLK_ECKR=0x00;
CLK_ICKR=0x01;
CLK_CMSR=0xe1;
CLK_SWR=0xe1;
CLK_CKDIVR=0x18;
2、定时器TIM2初始化
//定时器2初始化fmaster/分频=2M/2=1M,1us计数一次,50us 中断一次
void TIM2_Init(void)
{
_asm("sim"); //sim是禁止中断
TIM2_IER = 0x00; //禁止中断
TIM2_EGR =0x01; //允许产生更新标志
TIM2_PSCR =0x01; //设置时钟分频 2M/2=1MHz---1us
TIM2_ARRH = 0x00; //0x32=50; 周期=50次,每50us复位一次定时器2
TIM2_ARRL = 0x32; //ARR自动装载值,每1us递减1
TIM2_CNTRH=0x00; //初值
TIM2_CNTRL=0x00;
TIM2_CR1 |= 0x81; //开启定时器
TIM2_IER |= 0x01; //允许中断
_asm("rim"); //rim使能中断
}
3、中断执行程序
@far @interrupt void TIM2_UPD_IRQHandler(void)
{
TIM2_SR1 &=~(0x01);//=0x0e;//清楚中断标志位
PC_ODR=~PC_ODR;//需要先配置pc,pb为输出口
PB_ODR=~PB_ODR;
}
4、修改中断向量表
打开stm8_interrupt_vector.c文件,添加如下内容:
extern @far @interrupt void TIM2_UPD_IRQHandler(void);
修改下面一行:
{0x82, NonHandledInterrupt},
为:
{0x82,(interrupt_handler_t)TIM2_UPD_IRQHandler},
到此OK了,可以试试。
在我操作过程中,遇到一个很头疼的问题,就是下载器常常不好用,错误号30006,30003.
这两种情况下,首先确认你的stlink接线是否正确,其次量一下4根下载针电压,正确为:5V,Gnd,NRST-5V,SWIM-0v,(大致如此)。如果没有上面的问题,就可能是下载器和电脑没有连接好。需要重新软件连接和确认(Target-setting)。
下一篇:STM8之STVD的使用
史海拾趣
|
作为整天摆弄电烙铁,在袅袅的白烟中思考人生的电工,工作时如果干活的家什不顺手,那是再痛苦不过的事情。 1. 在焊接直插的元件时,要先把板子架起来,或者把元件插好后掰开腿反着焊; 2. 焊接双面板时,如果一面焊完了,焊另一面时,也要架起 ...… 查看全部问答> |
|
请问,在wince下如何修改对话框的背景颜色.是在wince下. 如题:网上找到的方法: 先定义画刷句柄后,再建立HBRUSH CIntefaceControlDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)消息响应,只在windwows平台有效,放在VS2008.net基于MFC智能程序就不行了. m_brush.DeleteObject(); m_brush.Crea ...… 查看全部问答> |
|
总是描述: 51单片机:不停地通过串口循环发送字符“0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c” PC机:通过串口调试助手接收查看。 开始的时候没问题,如果PC机在接收过程中,在调试助手里关闭串口,然后再找开串口,这时接收到的 ...… 查看全部问答> |
|
求助:STC12LE5404AD 不能外部复位,这是什么原因啊?谢谢! 请教: STC12LE5404AD 每次按复位键,都是得到同一个状态 (如每次按复位键数码管总是显示 8) 这是不是说明我的复位是可以的呢? 但是 复位不正确 但是数码管应该显示的是 0 还有,我按复位的时候 ,LED 最少是会灭一下的 可是 ...… 查看全部问答> |
|
低价出STM32F103ZET6开发板一块,可置换。 开发板图片参考链接:http://item.taobao.com/item.htm?id=4576843078 买来基本没用过,可以说说9.5成新以上。 特点性能 仿真器·内嵌ST-LINK II仿真器,支持STM32F10x标 ...… 查看全部问答> |




