51测试网 单片机教程XL2000开发板 单片机学习 自制编程器 单片机资料 软件下载 电子技术产品介绍如何购买 进入论坛

51测试网(深圳学林电子有限公司)从0开始来学单片机...入门教程

前言:单片机是一门实践性非常强的学科,为此我们突破传统思路,全面围绕单片机试验,从简单的流水灯开始, 逐步的带领大家从这些简单的几行或者10几行的程序,来熟悉和理解单片机的指令......未经允许禁止转载!如需转载,请著名出处,并保留网站联接!


小喇叭1khz信号

;知识要点:定时器的应用学习定时器的应用

;1如果输出1khz 那么1个周期是500us交替出现.晶体12m, 每周期1ust1为方式0则m1m0=00h,使用定时器c/t=0 gate=0

;方式0为13位定时器,总时间为2的13次方微秒.=8192微秒,减去500微秒=76921111000001100换算为16进制高8位等于0fh低8位 0ch

;注意:这两个字段不是连续的 低8位01100前面加0补足后再算初学请多多练习掌握计算方法, 有条件用示波器看频率

        ORG 0000H;

        LJMP MAIN;

        ORG 030H;

MAIN:   MOV TMOD,#00H;置定时器为方式0

        MOV TH1,#0f0H;载入定时的初值

        MOV TL1,#0CH;

        MOV IE,#00H;禁止中断

        SETB TR1;起动定时器

LOOP:   JBC TF1,LOOP1;查询定时器时间到了到loop1

        AJMP LOOP;否则继续查询

LOOP1:  MOV TH1,#0f0H;重新载入定时的初值

        MOV TL1,#0CH;

        CLR TF1;清除溢出标志

        CPL P3.3;小喇叭响

        AJMP LOOP;继续查询

        END;