找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 954|回复: 1
打印 上一主题 下一主题
收起左侧

智能玩具小车C程序

[复制链接]
跳转到指定楼层
楼主
ID:442104 发表于 2018-12-8 13:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
智能玩具小车练习C程序
编程器的读写软件借助编程器,可以读出未加密的单片机程序。

#include <reg51.h>
#include <intrins.h>
#define FOSC 18432000L
#define BAUD 9600
#define T1MS (65536-FOSC/1000)
#define T1MS (65536-FOSC/12/1000)
typedef unsigned char uchar;
typedef unsigned int uint;
#define URMD 0
sfr T2H = 0xd6;
sfr T2l = 0xd7;
sfr AUXR  = 0x8e;
sfr ADC_CONTR = 0xbc;
sfr ADC_RES   = 0xdb;
sfr ADC_LOW2  = 0xbe;
sfr P1ASF     = 0x9d;
#define ADC_POWER 0x80
#define ADC_FLAG  0X10
#define ADC_START 0x80
#define ADC_SPEEDLL 0x00
#define ADC_SPEEDL 0x20
#define ADC_SPEEDH 0x40
#define ADC_SPEEDHH 0x60
sbit P32 = P3^2;  //电机驱动口
sbit P10 = P1^0;
uint i=0,a,time_1=0,time_2=0;
uchar AD[5]={255,255,255,255,255};
void Delay(uint n)
{
    uint x;
    while(a--)
    {
        x = 5000;
        while(x--);
    }
}
void InitADC()
{
    P1ASF = 0xff;
    ADC_RES = 0;
    ADC_CONTR = ADC_POWER | ADC_SPEEDLL;
    Delay(2);
}
uchar GetADCResult(uchar ch)
{
    ADC_CONTR = ADC_POWER | ADC_SPEEDLL | ch | ADC_START;
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    while(!(ADC_CONTR & ADC_FLAG));
    ADC_CONTR &= ~ADC_FLAG;
    return ADC_RES;
}
void TIMER0_init()
{
    AUXR |= 0x80;
    AUXR &= 0x7f;
    TMOD = 0x01;
    TL0 = T1MS;
    TH0 = T1MS/256;
    TR0 = 1;
    ET0 = 1;
    EA  = 1;    //中断配置    定时器延时1ms   
}
void main()
{
    InitADC();
    TIMER0_init();
    P32 = 1    ;
   // P10 = 1;
    while(1)
    {
     ;
    }
}
void timer0() interrupt 1     //interrupt:表示此函数为中断服务程序 interrupt 1 为定时器中断0
{

    TL0 = T1MS;
    TH0 = T1MS/256;
    time_1++;

    if (time_1 == 2850  ) {
       time_1=0;
       P32 = 0;
       /*
       AD[i] = GetADCResult(0);
       if( (AD[0] == 0) && (AD[1] == 0) && (AD[2] == 0) && (AD[3] == 00) && (AD[4] == 00) && (ADC_LOW2 ==0) )    {
          P32 = 0;
          TR0 = 1;  
       }
       i++;
       if ( i == 6 )
          i=0;
       time_2++;
       if (time_2 ==1) {
          time_2 = 0;
          P32 = 0;
          TR0 = 1;
       }
       */
    }
}

小车程序.doc

17.5 KB, 下载次数: 3, 下载积分: 黑币 -5

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1 发表于 2018-12-9 01:42 | 只看该作者
补全原理图或者详细说明一下电路连接即可获得100+黑币
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表