PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Cơ bản về vi điều khiển và PIC (http://www.picvietnam.com/forum/forumdisplay.php?f=8)
-   -   đếm ngược từ 99 về 0 dùng 1 port sử dụng pic16f877a (http://www.picvietnam.com/forum/showthread.php?t=8684)

Heroboss 08-04-2011 06:28 PM

đếm ngược từ 99 về 0 dùng 1 port sử dụng pic16f877a
 
Em đang học vy xử lý đang có đoạn viết code đếm ngược từ 99 về 0 nhưng chỉ dùng 1 port thôi để điều khiển 2 led 7 đoạn. Ai có thể giúp dùm em viết đoạn code này được không à. Em xin cảm ơn các anh chị trên diễn đàn rất nhiều

akatsu 10-04-2011 04:54 PM

dùng quet led đi bạn. để lại mail đi mình sẽ send tài liệu hướng dẫn cho bạn

Heroboss 10-04-2011 06:39 PM

Dùng quét led thì em biết rồi, cần ở đây là kỹ thuật bảng(Lệnh retlw) mà chỉ được dùng 1 port để đếm ngược thôi không được dùng 2 port. Anh có thẻ giúp em k nếu được xin gửi qua yahoo: phong_le92000@yahoo.com. Em xin cảm ơn anh.

vidieukhiencdn 11-04-2011 02:23 PM

Trích:

Nguyên văn bởi akatsu (Post 43798)
dùng quet led đi bạn. để lại mail đi mình sẽ send tài liệu hướng dẫn cho bạn

- Máy tính bị mất hết dữ liệu mà sao còn tài liệu để send thế:) , để mình phụ 1 tay

Code:

#include <16F877a.h>
#include <def_8877A.h>
#fuses NOWDT,PUT,HS,NOPROTECT
#use delay(clock=4000000)
#define led0  ra0
#define led1  ra1
#define led2  ra2
#define led3  ra3

#define data_led  portb

char dig[]={192, 249, 164, 176, 153, 146, 130, 248, 128, 144};


void  hienthi7doan(int16 x)
{
  int8 i,j;
  for (j = 0;j<50;j++)
  {

  x = x%100;
  i = x/10;
  led2 = 0;
  data_led = dig[i];
  delay_ms(10);
  led2 = 1;
 
  i = x%10;
  led3 = 0;
  data_led = dig[i];
  delay_ms(10);
  led3 = 1;
}
}

void main()
{
  int8 i;
  // TODO: USER CODE!!
  trisb = 0x00;
  trisa = 0x00;
  portb = 0x00;
  porta = 0xff;
 
    while(true)
  {
   
      for (i = 0; i<100; i++)
      hienthi7doan(i);
 
  }

}

Nếu dếm lùi về thì bạn chỉnh lệnh for lại nhé

nguyenhuunguyen 16-04-2012 10:39 AM

Các anh ơi cho hương dẫn em viết chương trình điều khiển led matrix với .em mới học lên chưa bit nhiều .các anh gửi vào mail cho em nhé .thanks các anh .mail :nguyenhuunguyen91@gmail.com

tudonghoa_k54 16-04-2012 11:27 PM

Có ai biết viết bằng Asembly ko vậy?
Help me.


Múi giờ GMT. Hiện tại là 05:34 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam