单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1877|回复: 9
打印 上一主题 下一主题
收起左侧

STC12C5A60S2单片机最小系统板20个参考例程分享

[复制链接]
跳转到指定楼层
楼主
12单片机例程分享


参考1- 点亮LED灯
参考10- 串口查询方式发送
参考11- 串口查询方式收发
参考12-串口中断方式
参考13- 外部中断0 低电平触发
参考14- 外部中断0 下降沿触发
参考15- 外部中断1 低电平触发
参考16- 外部中断1 下降沿触发
参考17- 步进电机转动1
参考18- 步进电机转动2
参考19- LCD1602液晶屏显示
参考2- LED灯闪烁
参考20- 0.96寸OLED液晶屏显示
参考3- PWM呼吸灯
参考4- P4端口8个IO口输出高低电平
参考5- KEY按键控制LED亮灭
参考6- 定时器0
参考7- 定时器1
参考8- 1路1ms方波
参考9- 串口Printf显示


单片机源程序如下:
  1. /*******************************************************************
  2.   * 实验平台: STC12C5A60S2/STC89C52RC最小系统板
  3.   * 技术人员: 小蜂人工作室
  4.   * 年月时间: 2015.11
  5.         * 简单说明: 占空比方式改变LED灯显示                                          
  6. *******************************************************************/  
  7. #include<reg52.h>   /*头文件包含特殊功能寄存器的定义*/
  8. //IO引脚定义;
  9. sbit LED=P1^0;                                // 用sbit关键字定义LED到P1.0端口

  10. void Delay(unsigned int t); //延时函数声明

  11. /*********************************************************/
  12. /*                    主函数                                                                                         */
  13. /*********************************************************/
  14. void main (void)
  15. {
  16. //          unsigned int Time=1000, PWM=0;        //定义周期并赋值  (STC12C5A60S2芯片)                       
  17.         unsigned int Time=500, PWM=0;                //定义周期并赋值        (STC89C52RC芯片)
  18.        
  19.         while (1)         //主循环
  20.         {
  21.                 LED=1;                                        //P1.0管脚赋值1高电平,熄灭LED灯
  22.                 Delay(50000);          //延时       

  23. /* 阶段1:这个循环中低电平时长从1累加到Time(周期)的值,我们可以看到灯逐渐变亮 */
  24.                 for(PWM=1; PWM<Time; PWM++)
  25.                 {  
  26.                            LED=0;                        //点亮LED  
  27.                            Delay(PWM);                               
  28.                            LED=1;                        //熄灭LED
  29.               Delay(Time-PWM);          
  30.            }
  31.                
  32. /*阶段2:开始全亮*/               
  33.                 LED=0;
  34.                 Delay(50000);          //延时   
  35.                
  36. /* 阶段3:这个循环中低电平时长从Time(周期)的值逐减到0,我们可以看到灯逐渐变暗 */
  37.                 for(PWM=Time-1; PWM>0; PWM--)        //与逐渐变亮相反的过程
  38.                 {
  39.                            LED=0;                                                        //点亮LED  
  40.                            Delay(PWM);                                       
  41.                            LED=1;                                                        //熄灭LED
  42.               Delay(Time - PWM);             
  43.                    }
  44.         }
  45. }


  46. /*------------------------------------------------
  47. 延时函数,含有输入参数 unsigned int t,无返回值
  48. 范围是0~65535
  49. ……………………

  50. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
2.参考例程.rar (656.81 KB, 下载次数: 121)





分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 顶 踩
回复

使用道具 举报

沙发
bhjyqjs 发表于 2018-7-24 15:32 | 只看该作者
验证了一下,效果较理想
回复

使用道具 举报

板凳
维超 发表于 2018-7-24 19:20 | 只看该作者
不错。很有代表性。
回复

使用道具 举报

地板
kaxilion 发表于 2018-8-11 00:29 | 只看该作者
感谢分享啊
回复

使用道具 举报

5#
songyuan 发表于 2018-8-14 13:19 | 只看该作者
搞一下,现在正在用
回复

使用道具 举报

6#
cokesu 发表于 2018-11-4 18:06 | 只看该作者
谢谢大佬的分享
回复

使用道具 举报

7#
hyh390179373 发表于 2019-1-12 11:00 | 只看该作者
学习学习大佬
回复

使用道具 举报

8#
笨笨的短短 发表于 2019-2-26 21:24 | 只看该作者
感谢分享啦
回复

使用道具 举报

9#
风花雪月@ 发表于 2019-2-27 06:46 来自手机 | 只看该作者
很棒的。。。
回复

使用道具 举报

10#
月关Tom 发表于 2019-3-15 17:40 | 只看该作者
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51黑电子论坛单片机. 联系QQ:125739409;技术交流QQ群582644647

Powered by 单片机教程网

快速回复 返回顶部 返回列表