-
/****************《51单片机轻松入门-基于STC15W4K系列》配套例程 *************
★★★★★★★★★★★★★★★★★★★★★★★★
定时器实验
★★★★★★★★★★★★★★★★★★★★★★★★*/
// 内部RC时钟频率22.1184MHz
#include "STC15W4K.H"
sbit P0_0=P0^0;
void main()
{
P0=0xff; // 关闭P0口接的所有灯
TMOD=0x00; // 定时器0的16位自动重装方式
TH0=0x28; // 定时器初值2800H
TL0=0;
TR0=1;
for(;;)
{
if(TF0) //如果TF0等于1
{
TF0=0; // 清TF0
P0_0=!P0_0; // 执行灯亮或灭的动作
}
}
}
-
// printf测试
#include "STC15W4K.H"
#include // 为使用KEIL自带的库函数printf而加入
void printstar()
{
printf("********************************\n");
}
void print_message()
{
printf("hello world"); // 最简单输出
printf("How do you do!\n"); // 输出换行符\n
printf("欢迎学习STC51单片机\n"); // 中文输出
}
void UART_init(void)
{
//下面代码设置定时器1
TMOD = 0x20; // 0010 0000 定时器1工作于方式2(8位自动重装方式)
TH1 = 0xFD; // 波特率:9600 /11.0592MHZ
TL1 = 0xFD; // 波特率:9600 /11.0592MHZ
TR1 = 1;
//下面代码设置定串口
AUXR = 0x00; // 很关键,使用定时器1作为波特率发生器,S1ST2=0
SCON = 0x50; // 0101 0000 SM0.SM1=01(最普遍的8位通信),REN=1(允许接受)
TI=1; // 很关键,使用printf函数时必须有此命令
}
void main()
{
UART_init(); // 初始化串口
printstar(); // 输出**************
print_message(); // 输出说明文字
printstar(); // 输出**************
while(1) ; // 停在这里
}
-
最新视频与例程下载地址:https://pan.baidu.com/s/1bURkE6#list/path=%2F
-
/****************《51单片机轻松入门-基于STC15W4K系列》配套例程 *************
★★★★★★★★★★★★★★★★★★★★★★★★
《51单片机轻松入门-基于STC15W4K系列》 一书已经由北航出版社正式出版发行。
淘宝店地址:https://shop117387413.taobao.com 配套视频与例程免费下载地址:https://pan.baidu.com/s/1bURkE6#list/path=%2F
QQ群:STC51-STM32(3) :515624099 或 STC51-STM32(2):99794374。
验证信息:STC15单片机
邮箱:xgliyouquan@126.com
★★★★★★★★★★★★★★★★★★★★★★★★*/
//让接在STC15W4K58S4的P0.0引脚发光二极管发光
#include "STC15W4K.H" // include称为文件包含命令,后面双引号中内容称为头文件
sbit P0_0 = P0^0; // sbit是位定义,"STC15W4K.H"中有sfr P0 = 0X80字节定义语句
void main ()
{
P0_0=0; // 点亮LED
} // 实验证明:程序执行到这后面又执行P0_0=0。
// 流水灯
#include "STC15W4K.H" // 注意宏定义语句后面无分号
void delay100ms()
{
unsigned char i,j,k; // i,j,k由由软件计算出并验证正确。
for(i=157;i>0;i--) // 注意后面没分号
for(j=9;j>0;j--) // 注意后面没分号
for(k=194;k>0;k--); // 注意后面有分号
}
void port_mode() // 端口模式
{
P0M1=0x00; P0M0=0x00;P1M1=0x00; P1M0=0x00;P2M1=0x00; P2M0=0x00;P3M1=0x00; P3M0=0x00;
P4M1=0x00; P4M0=0x00;P5M1=0x00; P5M0=0x00;P6M1=0x00; P6M0=0x00;P7M1=0x00; P7M0=0x00;
}
void main()
{
unsigned char a;
port_mode(); // 将单片机所有端口配置为准双向弱上拉方式
while(1)
{
P0 =~(1
-
1101459202 发表于 2016-3-22 15:18
不錯,怎麼沒有第一章?謝謝!
最小系统电路如下
-
-
本帖最后由 无量寿经 于 2016-11-20 10:12 编辑
这里有最新的51单片机视频下载地址,希望能助你一臂之力。视频截图如下:
-
-
视频下载地址:
-
-
-
suoma 发表于 2016-4-15 19:32
语法问题
编译提示错误行再哪里就修改那里。
-
知识阅览者 发表于 2016-4-12 08:46
诶,楼主,您怎么更换头像了呀?这次是个老虎!!!
课件多的好详细好用心! ...
-
-
买本书抄呗,多抄就会了。
-
-
在粮库工作过,但对化验仪器不太熟。
-
replyreload += ',' + 1993559;游客,如果您要查看本帖隐藏内容请回复
-
初学时可以先看些视频,免费视频地址:http://pan.baidu.com/share/home? ... are#category/type=0
-
可在学习单片机的过程中熟练C语言,入门时建议先看视频,免费视频地址:http://pan.baidu.com/share/home?uk=4077802723&view=share#category/type=0