91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

使用方法含在代碼的注釋內,只要有基礎的單片機知識即可了解,及其詳盡

資源截圖

代碼片段和文件信息

/*****************************************************************************
?**?文件 :?main.c
?**?作者 :?Zheng23
?**?日期 :?
?**?功能 :?
/*****************************************************************************/
//#include?
//#include“STC89C5xRC.H“


//一定要用12M的晶振
//一定要用12M的晶振
//一定要用12M的晶振
//一定要用12M的晶振
//一定要用12M的晶振
//一定要用12M的晶振

#include?“reg51.h“

#define?uint8 unsigned?char????
#define?uint16 unsigned?short?int
#define?uint32 unsigned?long?

sbit?SERVO0=P0^0; //控制舵機的PWM輸出口

uint16?Servo0PwmDuty=1500; //PWM脈沖寬度

/***********************************************************
*?名????稱:?DelayMs(uint16?ms)?
*?功????能:?延時ms毫秒
*?入口參數:?ms 毫秒
*?出口參數:?無
*?說????明:? ?
/**********************************************************/
void?DelayMs(uint16?ms)
{
uint16?ij;
for(i=0;i<85;i++) //89單片機用8512系列單片機用800
for(j=0;j}
/***********************************************************
*?名????稱:InitTimer0()
*?功????能:時鐘0初始化
*?入口參數:無
*?出口參數:無
*?說????明:12M晶振,12分頻,所以計數器每遞增一個數就是1微秒,完全滿足舵機控制的精度要求
因為定時器是TH0,TL0都要全部計數到0xFF后在計1個數就會產生中斷,所以要想產生
x毫秒的中斷,那么TH0,TL0就應該賦值(0xFFFF-x) 從這個值開始計數產生定時中斷 ?
/**********************************************************/?
void?InitTimer0(void)
{
TMOD?&=?0xF0; //設置定時器模式
TMOD?|=?0x01; //設置定時器模式
TL0?=?0x00; //設置定時初值
TH0?=?0x00; //設置定時初值
TF0?=?0; //清除TF0標志
TR0?=?1; //定時器0開始計時
ET0?=?1; //開定時器0中斷
}
/***********************************************************
*?名????稱:Timer0Value(uint16?pwm)??
*?功????能:給定時器0計數器賦值產生定時中斷?
*?入口參數:pwm 控制舵機的PWM脈沖寬度值(范圍:500~2500)
*?出口參數:無
*?說????明:12M晶振,12分頻,所以計數器每遞增一個數就是1微秒,完全滿足舵機控制的精度要求
因為定時器是TH0,TL0都要全部計數到0xFF后在計1個數就會產生中斷,所以要想產生
pwm毫秒的中斷,那么TH0,TL0就應該賦值(0xFFFF-pwm) 從這個值開始計數產生定時中斷? ?
/**********************************************************/?
void?Timer0Value(uint16?pwm)
{
uint16?value;
value=0xffff-pwm;
TR0?=?0;
TL0=value; //16位數據給8位數據賦值默認將16位數據的低八位直接賦給八位數據
????TH0=value>>8; //將16位數據右移8位,也就是將高8位移到低八位,再賦值給8位數據
TR0?=?1;
}
/***********************************************************
*?名????稱:?main()
*?功????能:?入口函數
*?入口參數:?無
*?出口參數:?無
*?說????明:? ?
/**********************************************************/?
void?main(void)
{

InitTimer0(); //定時器0初始化
EA?=?1; //開總中斷
while(1) //大循環
{
Servo0PwmDuty?=?500; //脈沖寬度在500微秒,對應-90°
DelayMs(1000); //延時1秒
Servo0PwmDuty?=?1000; //脈沖寬度在1000微秒,對應-45°
DelayMs(1000);
Servo0PwmDuty?=?1500;
DelayMs(1000);
Servo0PwmDuty?=?2000;
DelayMs(1000);
Servo0PwmDuty?=?2500;
DelayMs(1000);
Servo0PwmDuty?=?2000;
DelayMs(1000);
Servo0PwmDuty?=?1500;
DelayMs(1000);
Servo0PwmDuty?=?1000;
DelayMs(1000);
}
}

/***********************************************************
*?名????稱:?Timer0_isr()?interrupt?1?using?1
*?功????能:?時鐘0中斷處理
*?入口參數:?無
*?出口參數:?無
*?說????明:? ?
/**********************************************************/?
void?Timer0_isr(void)?interrupt?1?using

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????????0??2016-06-18?15:36??STC單片機舵機PWM控制教程\一定要用12M的晶振.txt

?????文件???????4113??2016-06-18?15:34??STC單片機舵機PWM控制教程\單個舵機控制\main.c

?????文件???????8110??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\main.LST

?????文件???????4659??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\main.OBJ

?????文件?????????34??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\main.__i

?????文件???????4680??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\Project1

?????文件???????1153??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\Project1.hex

?????文件?????????82??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\Project1.lnp

?????文件???????7822??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\Project1.M51

?????文件????????178??2015-06-16?17:42??STC單片機舵機PWM控制教程\單個舵機控制\Project1.plg

?????文件??????85271??2019-08-07?14:19??STC單片機舵機PWM控制教程\單個舵機控制\Project1.uvgui.10707

?????文件??????72597??2015-06-23?19:16??STC單片機舵機PWM控制教程\單個舵機控制\Project1.uvgui.Administrator

?????文件?????138889??2016-06-18?15:36??STC單片機舵機PWM控制教程\單個舵機控制\Project1.uvgui.Xia

?????文件??????72563??2015-06-21?21:12??STC單片機舵機PWM控制教程\單個舵機控制\Project1.uvgui_Administrator.bak

?????文件?????138886??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\Project1.uvgui_Xia.bak

?????文件???????5443??2019-08-07?14:19??STC單片機舵機PWM控制教程\單個舵機控制\Project1.uvopt

?????文件??????14041??2019-08-07?14:19??STC單片機舵機PWM控制教程\單個舵機控制\Project1.uvproj

?????文件???????5869??2016-06-18?15:33??STC單片機舵機PWM控制教程\單個舵機控制\Project1_uvopt.bak

?????文件??????13456??2015-06-14?14:03??STC單片機舵機PWM控制教程\單個舵機控制\Project1_uvproj.bak

?????文件???????6376??2010-09-03?17:12??STC單片機舵機PWM控制教程\單個舵機控制\STARTUP.A51

?????文件??????14049??2015-06-14?12:00??STC單片機舵機PWM控制教程\單個舵機控制\STARTUP.LST

?????文件????????749??2015-06-14?12:00??STC單片機舵機PWM控制教程\單個舵機控制\STARTUP.OBJ

?????文件?????????42??2015-06-14?12:06??STC單片機舵機PWM控制教程\單個舵機控制\說明.txt

?????文件???????8861??2015-06-14?12:07??STC單片機舵機PWM控制教程\單個舵機控制\__Previews\main.cPreview

?????文件???????5649??2016-06-18?15:35??STC單片機舵機PWM控制教程\單個舵機速度控制\main.c

?????文件??????11607??2016-06-18?15:35??STC單片機舵機PWM控制教程\單個舵機速度控制\main.LST

?????文件???????7248??2016-06-18?15:35??STC單片機舵機PWM控制教程\單個舵機速度控制\main.OBJ

?????文件?????????53??2016-06-18?15:35??STC單片機舵機PWM控制教程\單個舵機速度控制\main.__i

?????文件???????7479??2016-06-18?15:35??STC單片機舵機PWM控制教程\單個舵機速度控制\Project1

?????文件???????3947??2016-06-18?15:35??STC單片機舵機PWM控制教程\單個舵機速度控制\Project1.hex

............此處省略86個文件信息

評論

共有 條評論