stm8 占空比测电机速度以及显示在1602液晶显示屏上历程调试

本文介绍了使用STM8单片机通过PWM调整占空比来测量电机速度,并将结果显示在1602液晶显示屏上的过程。通过按键改变PWM值,计算电机转速,并在液晶屏上显示。遇到程序错误后,经过调试成功解决问题。
摘要由CSDN通过智能技术生成

/*******************************************************************

  • 实验名称及内容:速度显示液晶屏

  • 配套书籍:《深入浅出STM8单片机入门、进阶与应用实例》

  • 实验平台及编程人员:骨灰级菜鸟
    /
    #include"iostm8s208mb.h"//主控芯片的头文件
    /端口/引脚定义
    /
    #define LCDRS_SET PF_ODR|=0x01 //置位PF0
    #define LCDRS_CLR PF_ODR&=0xFE //清0PF0
    #define LCDRW_SET PF_ODR|=0x08 //置位PF3
    #define LCDRW_CLR PF_ODR&=0xF7 //清0PF3
    #define LCDEN_SET PF_ODR|=0x10 //置位PF4
    #define LCDEN_CLR PF_ODR&=0xEF //清0PF4
    /常用数据类型定义
    /
    #define u8 uint8_t
    #define u16 uint16_t
    #define u32 uint32_t
    typedef unsigned char uint8_t;
    typedef unsigned short uint16_t;
    typedef unsigned long uint32_t;
    unsigned int long CNT;
    unsigned int long SPEED;
    unsigned int long VALUE;
    /用户自定义区域
    /
    const unsigned char table1[]=“VALUE”; //LCD1602显示字符串数组1显示效果用
    const unsigned char table2[]=“FIGNTING”; //LCD1602显示字符串数组2显示效果用
    /全局变量定义
    /
    unsigned char PWM =0; //定义全局变量用于控制占空比
    unsigned char num; //定义循环变量NUM
    /函数初始化定义
    /
    void delay(u16 Count); //延时函数
    void TIM2_PWM_Init(void); //PWM初始化函数
    void KEY_Init(void); //按键端口函数
    void KEY_Scan(void); //按键扫描函数
    void TIM4_Init(void); //TIM4初始化函数
    void Exti_Init(void); //外部中断初始化函数
    void Write_Com(unsigned char com); //向1602液晶写命令函数声明
    void Write_Inf(unsigned char inf);//向1602液晶写数据函数声明
    vo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值