• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >嵌入式开发 > 对于单片机型号为stc12c5a60s2问题

对于单片机型号为stc12c5a60s2问题

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-05

佚名通过本文主要向大家介绍了stc12c5a60s2单片机,stc12c5a60s2 adc型号,stc12c5a60s2,stc12c5a60s2中文资料,stc12c5a60s2引脚图等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 对于单片机型号为stc12c5a60s2问题
描述:

单片机stc12c5a60s2PWM频率

/**************************************************************
用STC12C5A60S2控制直流电机,PWM控制转速,按键s1、s2控制加速减速
因只控制一路电机所以只用到一路PWM,若用到两路则打开另一路即可
晶振为22.1184MHz,使用其他晶振时把延时函数改一下即可。
***************************************************************/
#include<STC12C5A60S2.H> //头文件
sbit s1 = P2^7;//加速控制
sbit s2 = P2^6;//减速控制
sbit R1 = P1^1;
sbit R2 = P1^2;//R1和R2控制转向,一个高电平一个低电平
sbit IO = P1^3;
sbit ENB = P0^2;
unsigned int z=0;
unsigned char flag=0;
void time0_init();
void delay_ms(unsigned int time)
{
int x,y;
for(x=time;x>0;x--)
 for(y=229;y>0;y--);
}
void PWM_init (void)
{
CMOD=0x04; //设置PCA定时器
  CL=0x00; 
  CH=0x00;
CCAPM0=0x42; //PWM0设置PCA工作方式为PWM方式(0100 0010)
  CCAP0L=0xFF; //设置PWM0初始值与CCAP0H相同
  CCAP0H=0x8D; // PWM0初始时为0
CCAPM1=0x42; //PWM1设置PCA工作方式为PWM方式(使用时删除//)
CCAP1L=0x00; //设置PWM1初始值与CCAP0H相同
  CCAP1H=0x00; // PWM1初始时为0
  CR=1; //启动PCA定时器
}
/**********************************************************************************************/
/*********************************************************************************************
函数名:PWM0占空比设置函数
调  用:PWM0_set();
参  数:0x00~0xFF(亦可用0~255)
返回值:无
结  果:设置PWM模式占空比,为0时全部高电平,为1时全部低电平
备  注:如果需要PWM1的设置函数,只要把CCAP0L和CCAP0H中的0改为1即可
/**********************************************************************************************/
void PWM0_set (unsigned char a)
{
CCAP0L= a; //设置值直接写入CCAP0L
  CCAP0H= a; //设置值直接写入CCAP0H
}
/*
void PWM1_set (unsigned char a)
{
CCAP1L= a; //设置值直接写入CCAP0L
  CCAP1H= a; //设置值直接写入CCAP0H
}*/
/**********************************************************************************************/
void main ()
{
    //AUXR |= 0x80;             //定时器0设置为1T
PWM_init(); //PWM初始化
time0_init();
R1 = 0;
R2 = 1;
PWM0_set (100);
z = 1;
while(1)
{ ;
// if(s1==0)
// {
// delay_ms(50);
// if(s1==0)
// {
// z++;
// ENA = 0;
// ENB =0;
// while(s1==0);//等待按键松开 
// PWM0_set (z);
// if(z == 250)   
// {  
//    z=80;
// }
// }
// }    
// if(s2==0)
// {
// delay_ms(50);
// if(s2==0)
// {
// z--;
// ENA = 1;
// ENB =1;
// while(s2 == 0);//等待按键松开
// PWM0_set (z);
// if(z == 1)   
// {
//    z=1;
// }
// }
// }
}
}
void time0_init()
{
  TMOD=0x02;
  TH0=-62;
  TL0=-62;
  
  ET0=1;
  TR0=1;
  EA=1;
}
void timer_interrupt () interrupt 1
{
   TH0=-62;
TL0=-62;
  
flag=!flag;
if(flag==1)
{
PWM0_set(100);
}
else
{
CR=0;
}
}
对于这一程序。我该实现PWM频率改成8K .。但是却测试不了。有谁帮下忙。看看什么问题。在线等`~急


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 对于单片机型号为stc12c5a60s2问题

相关文章

  • 2017-06-05 求802154中文译本
  • 2017-06-05 急急急。。。。。。请问系统windows调用驱动的什么函数(接口)判断鼠标是否存在?
  • 2017-06-05 关于RF卡的发卡程序
  • 2017-06-05 lwiptcp并发服务器,seletc连接不稳定,两个客户端同时方式,server收发一段时间后,再也连接不上
  • 2017-06-05 有关gprsdtu,sim900a的tcp传输问题
  • 2017-06-05 64位Win7旗舰版建Wince60工程编译老是报错----ERROR:Res2Res:WriteResFile:Openinputfilexxx
  • 2017-06-05 INF中CoInstaller问题
  • 2017-06-05 有偿征集X86CPU外挂USB接口硬件解决方案及相应软件源代码
  • 2017-06-05 请问使用softice如何进入一个程序的领空?
  • 2017-06-05 没必要参加嵌入式开发培训班,看完你就知道了

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • debug的作用
    • 请教大家关于买板子的问题。
    • wince数据库读写对CAN读写的影响
    • 让我揪心的错误啊~Undefinedsymbolabort
    • 请问一张ARM7的开发板多少钱啊,我考虑买一张啊!
    • 关于spi的SMCLK
    • 如何实现虚拟机和主机互ping同时还能上网
    • 非root用户修改给自己用的DNS
    • ARM微处理器运行模式
    • 上行带宽和下行带宽共享带宽这一概念如何理解?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有