發表文章

目前顯示的是 3月, 2021的文章

MorrisLu

圖片
 https://item.taobao.com/item.htm?spm=a1z0d.6639537.1997196601.36.51027484xxhPV4&id=557459560137 微型滑台 丝杆马达 光驱步进电机 DIY小型滑台 带限位开关 ¥32.00

STM8S105K4T6 IAR TIM4 中斷計時, 閃灯, 脈波輸入, 計算頻率

 1. 計時器4 , 計算時間。得到標準秒。 2. 脈波頻率輸入, 單位時間秒, 計算次數, 計算出頻率 3. uart 送出頻率值。

STM8S105K4T6 IAR TIM4 中斷計時, 閃灯

STM8S105K4T6 IAR TIM4 中斷計時, 閃灯 1. include .h 順序注意。 1. 系统的主时钟采用默认的高速内部振荡器 8 分频,即 2MHz 。 2000khz/2^7=15.625kz 256*61=15616 , 等於1秒   #include "stm8s.h" #include "stm8_tsl_api.h" //#include "IOSTM8S103F3.h" #include "IOSTM8S105k4.h" unsigned char i=0; void Init_Timer4(void) {     TIM4_CR1=0x01;//使能计数器   //TIM4_IER=0x00;     TIM4_IER=0x01;//更新中断使能     TIM4_EGR=0x01;     TIM4_CNTR=255;//计数器值     TIM4_ARR=255;//自动重装的值     TIM4_PSCR=0x07;//分频值 } void Init_GPIO(void) { //    PB_DDR|=0x20; //    PB_CR1|=0x20; //    PB_CR2|=0x00;     PE_DDR_bit.DDR5 = 1;//do     PE_CR1_bit.C15  = 1;//pull up     PE_CR2_bit.C25  = 1;//1 int , 我用0 , 也正常      } /* 中断 声明一个中断向量,说明如下: #pragma vector=0x02 __interrupt void interrupt_handler(void) { } 说明: #pragma vector: 是IAR中断向量指令=0x02 : 其数字代表中断向量编号。STM8的地址是从0x00800开始,IAR的中断编号从0开始。中断向量号依次按照中断地址递增。如: 复位向量是0x00800...