登录 免费注册 首页 | 行业黑名单 | 帮助
维库电子市场网
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统
驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe

我是单片机高手,有问题找我

作者:yakxys 栏目:单片机

我是单片机高手,有问题找我

0769-84887643 . yakxys@126.com
QQ: 384354213

2楼: >>参与讨论
萧台基
yakxys单片机高手:用PIC系列驱动模拟屏方案有没有!
3楼: >>参与讨论
飞扬电子

好的

我加你

4楼: >>参与讨论
sagetom

第一次见过这么有自信的人。!

5楼: >>参与讨论
gezhe
学习
6楼: >>参与讨论
知行
是不是看到雷锋了,,还原剂是吹牛
7楼: >>参与讨论
学徒

我也要加你

8楼: >>参与讨论
赵鹏1986
我,在校学生.刚开单片机课程,各路前辈能否告知我些关于这课程的学习方法.及要准备那些材料,建议些好的辅导书籍.将不甚感激.
9楼: >>参与讨论
uranus0903

我加过了

再做毕业设计,

顶一下!

10楼: >>参与讨论
wanny

有自信固然好啊。。

我也希望有一天能如楼主说出这类话。。

学习中。。

11楼: >>参与讨论
maliguo2002cn

牛人,不错勇气可嘉!!

1楼说的不够详细,当然了我给你推荐一个PIC单片机16F877A,功能强大。

12楼: >>参与讨论
happyjuan
现在在做毕业设计用是MSP430F149系列的单片机 现急需有关MSP430F149应用方面的资料请大家帮忙提示一下  小女子不胜感激
13楼: >>参与讨论
fdh303

这么有自信,我加了,先谢谢了

14楼: >>参与讨论
bellsleep

高手!~~~~过来给我们上上课啊~~~~

先给我们讲讲单片机的发展前景吧!~~~

也让我们学习单片机有更加坚定的信心,也有更大的动力啊~~~

15楼: >>参与讨论
zfp783789
牛!高手是王婆,这么多的贴子为什么不回,脸红呀
16楼: >>参与讨论
feich

我是做毕业设计的,单片机的,以后请多指教

qq:115686675

大家可以加我讨论一下

17楼: >>参与讨论
foolfoolbird

楼主有点自负了

低调低调

18楼: >>参与讨论
00霖霖
高手帮忙做个病房呼叫器的毕业设计,用AT89C51单片机做~!!
19楼: >>参与讨论
prettyboymu
哎呀,楼主难道是传说中的"武林高手"
20楼: >>参与讨论
whbwy
给我个烧录器的原理图,可檫可写的,功能全点的,有按键的,
21楼: >>参与讨论
chenferzhu

有自信好!但愿有一天我们都能说出这句话。

22楼: >>参与讨论
mangopoon

他只是說"有问题找我",可沒說一定回阿,哈哈!


23楼: >>参与讨论
oyn
好的我加了
24楼: >>参与讨论
lxxuio
真的吗,我加你
25楼: >>参与讨论
frc

不错

有问题会问你的

加你

26楼: >>参与讨论
sijing

用89 s51制作高精度数字频率计

采用89S51单片机为控制核心,对外部电路输入的正弦波,三角波,方波脉冲进行频率的测量,输入的脉冲幅值为5V,具有过压保护电路,输入脉冲频率为1---100MHz,通过6位数码管显示测量的结果,显示分为1hzz1khz两档。要求精确到1hz.

能给出硬件图和电路图吗

谢谢

我的邮箱是 sijingnanhai@tom.com

27楼: >>参与讨论
无风

牛人

28楼: >>参与讨论
88yehappy

好,看来是位前辈来的,我加

29楼: >>参与讨论
chao
如此有自信之大虾第一次见~~
30楼: >>参与讨论
zxj431

ZLG7290的汇编程序吗??

31楼: >>参与讨论
caidehua0503

datestr[0]=led[date.day%10];
datestr[1]=led[(int)(date.day/10)];
datestr[2]=led[date.month%10];
datestr[3]=led[(int)(date.month/10)];
datestr[4]=led[date.year%10];
datestr[5]=led[(int)(date.year/10)];
}



哪里错了?

32楼: >>参与讨论
爱上迈克

单片机高手,有没有关于单片机的电动摩托车控制器的设计的资料,小弟在此谢了

33楼: >>参与讨论
wangxianmin

大哥好:

       小弟初学单片机,在资料的帮助下,用89C2051DS1302制作了一个电子

时钟,并用6位数码馆分别显示时,分,秒,显示器驱动用的是74LS164;写的程

序如下,显示的数字是:141414   麻烦朋友们给我指出一下错误在那里?
本人邮箱:wangxianmin1987@yahoo.com.cn
非常谢谢!

DS1302的初始化及显示:

#include "reg51.h"
#include "typedef.h"
   #include "lcd.h"
#include "ds1302.h"
#include "key.h"

#define uCHAR unsigned CHAR

void reset_3w();
void wbyte_3w(uCHAR);
uCHAR rbyte_3w();
void write_byte(uCHAR Clock_Add,uCHAR Clock_Data);
uCHAR read_byte(uCHAR);
void write_clock_burst();
void ds1302_init();
void  ds1302_task();

void dis();

sbit DAT=P1^0;
sbit CLK=P1^1;

uCHAR Disbuffer[6]={0,0,0,0,0,0};
uCHAR code tab[]=

{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x08,0x40,0x01};


uCHAR code hex2bcd[] = {
    0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, /* 00-

09 */
    0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, /* 10-

19 */
    0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, /* 20-

29 */
    0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, /* 30-

39 */
    0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, /* 40-

49 */
    0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, /* 50-

59 */
    0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, /* 60-

69 */
    0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, /* 70-

79 */
    0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, /* 80-

89 */
    0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, /* 90-

99 */
};

uCHAR code bcd2hex[] = {
     0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 0, 0, 0, 0, 0, 0, /* 00-09

*/
    10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 0, 0, 0, 0, 0, 0, /* 10-19

*/
    20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, 0, 0, 0, 0, /* 20-29

*/
    30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 0, 0, 0, 0, 0, 0, /* 30-39

*/
    40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, /* 40-49

*/
    50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 0, 0, 0, 0, 0, 0, /* 50-59

*/
    60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 0, 0, 0, 0, 0, 0, /* 60-69

*/
    70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 0, 0, 0, 0, 0, 0, /* 70-79

*/
    80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 0, 0, 0, 0, 0, 0, /* 80-89

*/
    90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 0, 0, 0, 0, 0, 0, /* 90-99

*/
};



void reset_3w() /* ----- reset and enable the 3-wire interface ------

*/
{
   SCLK = 0;
   RST = 0;
   RST = 1;
}


void wbyte_3w(uCHAR W_Byte) /* ------ write one byte to the DEVICE ---

---- */
{
uCHAR i;

for(i = 0; i < 8; ++i)
{
  IO = 0;
  if(W_Byte & 0x01)
  {
   IO = 1; /* set PORT pin high to read data */
  }
  SCLK = 0;
  SCLK = 1;
  W_Byte >>= 1;
  }
}


uCHAR rbyte_3w() //read one byte from the DEVICE
{
uCHAR i;
uCHAR R_Byte;
uCHAR TmpByte;

R_Byte = 0x00;
IO = 1;
for(i = 0; i < 8; i++)
{
  SCLK = 1;
  SCLK = 0;
  TmpByte = (uCHAR)IO;
  TmpByte <<= 7;
  R_Byte >>= 1;
  R_Byte |= TmpByte;
}
return R_Byte;
}


void write_byte(uCHAR Clock_Add,uCHAR Clock_Data) //write one byte

using VALUEs entered by user
{
reset_3w();
wbyte_3w(Clock_Add);
wbyte_3w(Clock_Data);
reset_3w();
}

void write_clock_burst()
{
reset_3w();
wbyte_3w(CLOCK_BURST_ADD); /* clock burst write (eight registers) */
wbyte_3w(hex2bcd[sec]);
wbyte_3w(hex2bcd[min]);
wbyte_3w(hex2bcd[hour]);
wbyte_3w(hex2bcd[date]);
wbyte_3w(hex2bcd[month]);
wbyte_3w(hex2bcd[day_of_week]);
wbyte_3w(hex2bcd[year]);
wbyte_3w(0);  /* must write CONTROL register in burst mode */
reset_3w();
}

uCHAR read_byte(uCHAR Clock_Add) // Read one byte from DS1302
{
uCHAR Clock_Data;
reset_3w();
wbyte_3w(Clock_Add);
Clock_Data = rbyte_3w();
reset_3w();
return(Clock_Data);
}

void ds1302_init() /* --- initialize time & date for default VALUE ---

*/
/* Note: NO error checking is done on the user entries! */
{
reset_3w();
wbyte_3w(0x8e); // CONTROL register
wbyte_3w(0);  // disable write protect
reset_3w();
wbyte_3w(0x90); // trickle CHARger register
wbyte_3w(0xa4); //enable, 2 diodes, 8K RESISTOR
write_clock_burst();   //写入初始化时间
}

void sendCHAR(uCHAR byte)
{
   uCHAR led1,jj,led;
   led=tab[byte];
   for(jj=0;jj<8;jj++)
{
  led1=led&0x1;
  if (led1==0x1)
  DAT=1;//DATA=1
  else
  DAT=0;//DATA=0
  CLK=0;CLK=1;//clk=0~1
  led=led>>1;
}
}

  void delay_50ms(unsigned int t)
{
    unsigned int j;
  for(;t>0;t--)
  for(j=6245;j>0;j--)  
  {;}
  }

  void delay_50ms(unsigned int t);
  void sendCHAR(uCHAR byte);
void ds1302_task()
{
    int i,j;
    uCHAR a,b,c,d,e,f;
//if(!key_enable)
//{
   sec = bcd2hex[read_byte(READ_SEC_ADD)];       //读DS1302 sec
  min = bcd2hex[read_byte(READ_MIN_ADD)];     //读DS1302 min
// hour = bcd2hex[read_byte(READ_HOUR_ADD)];   //读DS1302 hour
// date = bcd2hex[read_byte(READ_DATE_ADD)];     //读DS1302 day和

day_of_week
  //day_of_week = bcd2hex[read_byte(READ_DOW_ADD)];
// month = bcd2hex[read_byte(READ_MONTH_ADD)];   //读DS1302 month
// year = bcd2hex[read_byte(READ_YEAR_ADD)];    //读DS1302 year
  //}
   a=hour/10;
      b=hour%10;
      c=min/10;
      d=min%10;
   e=sec/10;
   f=sec%10;
    
   Disbuffer[0]=a;
   Disbuffer[1]=b;
   Disbuffer[2]=c;
   Disbuffer[3]=d;
   Disbuffer[4]=e;
   Disbuffer[5]=f;


    for(i=0;i<6;i++)
       {
    
        sendCHAR(Disbuffer[i]);
      
       }
    delay_50ms(10);

}


主程序:

#include "reg51.h"
#include "typedef.h"
#include "lcd.h"
#include "key.h"
#include "alarm_clock.h"
#include "

34楼: >>参与讨论
冰雪心
好,我加你正好有问题想找人解决
35楼: >>参与讨论
长天秋水
遇到高人了,希望以后能指教一二!:)
36楼: >>参与讨论
忘穿秋水

能否发给关于89c51在电梯呼梯,层显,开门机上的汇遍语言,拜托!

    邮箱:wanghui367@126.com

参与讨论
昵称:
讨论内容:
 
 
相关帖子
[求助]1602汇编电子钟问题???
用单片机点亮一个闪烁的发光管[转]比较详细
紧急求助,抢答器电路设计!!!!!!!S7-200CPU224...
[原创]有点遗憾。。。
[讨论]PIC会否有一天取代了MCS-51阿?
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入


Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号