📄 pwm.c
字号:
#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include <sys/ipc.h>#include <sys/ioctl.h>#include "hardware.h"#define KT0 16#define KT1 4#define T0 254#define T1 16#define M 66000000void chushi0(){ TCFG0 |= KT0; TCFG1 |= 1; TCNTB0 = M/KT0/KT1/1000; TCMPB0 = M/KT0/KT1/1000/2; TCON |= 0x2; TCON &= ~0x2; TCON |= 0x19; }void chushi2(){ TCFG0 |= T0<<8; TCFG1 |= 3<<8;}void delay(){ TCNTB2 = 65530; TCON |= 0x1<< 13; TCON &= ~(0x1<< 13); TCON |= 0x1 << 12; while(!TCNTO2); while(TCNTO2); TCON &= ~(0X1<<12); }void setpwm(int n){ TCMPB0 = M/KT0/KT1/1000/2+n;}int main(){ int m=500; int i; chushi0(); chushi2(); while(1) { for(i=0;i<100;i++); printf("123123\n"); m = -m; if(m>0) printf("++++"); else printf("----"); setpwm(m); delay(); } return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -