PIC Vietnam

Go Back   PIC Vietnam > Các Đề Tài > Luận văn tốt nghiệp

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Luận văn tốt nghiệp Nếu bạn thắc mắc vì sao chúng tôi muốn phổ biến các luận văn tốt nghiệp? Xin xem tại đây

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 03-01-2010, 11:00 AM   #1
meopic
Đệ tử 1 túi
 
meopic's Avatar
 
Tham gia ngày: Sep 2009
Bài gửi: 18
:
Smile Giúp em về vấn đề hiển thị trên lcd !!

Tình hình là em đag làm đồ án về dụng cụ đo điện áp xài con pic16f88, áp được đưa vào adc và hiển thị lên LCD. Vấn đề em gặp phải là thông số điện áp trên LCD nháy quá nhiều, đôi lúc nhảy những giá trị o chính xác.
Đây là code chương trình của em :
[code]#include <16f88.h>
#include <def_88.h>
#device *=16 ADC=10
#fuses NOWDT, HS, PUT, NOLVP
#use delay(clock=4000000)
#use rs232(baud=9600,parity=N,xmit=PIN_B5,rcv=PIN_B2,bi ts=8)
#include <LCD_4BIT16F88edit.C> // Thu vien ham cho LCD
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int16 temp;
int8 nghin,tram,chuc,donvi;
int1 mili_volt;
float volt;
void convert_bcd(int16 x)
{
nghin = x / 1000 +0x30;
temp = x % 1000;
tram = temp / 100 +0x30;
temp = temp % 100;
chuc = temp / 10 +0x30;
donvi = temp % 10 +0x30;
}
void main( )
{
set_TRIS_B(0x00);
LCD_init();
delay_ms(100);
LCD_Putcmd(0X80);
printf(LCD_putchar,"DIEN AP ");
setup_adc( ADC_CLOCK_INTERNAL );
Setup_ADC_ports (0);
Set_ADC_channel (0) ;
Delay_us (100);
while (1){
temp = read_adc() ;
volt=(float)(temp*5)/1023;
volt=volt*1000;
convert_bcd((int16)volt);
lcd_putcmd(0xc0);
{printf(lcd_putchar,"U= ");
lcd_putchar(nghin);
lcd_putchar(".");
}
lcd_putchar(tram);
lcd_putchar(chuc);
lcd_putchar(donvi);
printf(lcd_putchar," V");
printf("%u.%u%u%u",nghin-0x30,tram-0x30,chuc-0x30,donvi-0x30);
}
}[code]

Tuy nhiên, trước khi vào adc của pic thì em có dùng cái mạch phân áp như sau nữa, o bit có tạo nhiễu nhiều hay o ??!!
Các bác có cao kiến gì thì chỉ giáo dùm em với, e sắp bảo vệ rùi nên mong các bác hồi âm sớm
ah !! thầy em có bảo là dùng thuật toán cộng giá trị trung bình (gttb) j đó rùi hiển thị thì sẽ bớt nháy đi tuy nhiên e ko bit phải làm sao để lấy ra các lần xuất ra để tính gttb nữa !! mong các ace giúp đỡ !!
Thanks !!!
__________________
ALWAYS BE U !! HEHEHE
meopic vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


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


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam