View Single Post
Old 29-11-2007, 12:00 PM   #13
dongbka
Nhập môn đệ tử
 
Tham gia ngày: Oct 2007
Bài gửi: 3
:
giúp mình với
mình đang muốn hiển thị chuỗi ký tự lên lcd nhưng không được
đây là code của mình

Code:
///////////////////////////////////////////////////////////
//Hien thi ky tu ra man hinh
void lcd_display_char(int1 line, int8 pos, char ch)
{
   lcd_write(0x80 + 0x40 * line + pos, WRITE_COMMAND);
   lcd_write(ch, WRITE_DATA);
   lcd_write(0x0c, WRITE_COMMAND); // Bo nhap nhay?
}
///////////////////////////////////////////////////////////
void lcd_display_str(int1 line, int8 posc, char str[])
{
   int8 i,j;
   j=strlen(str);
   for (i = posc; i < j+posc ; i++)
      {
      lcd_display_char(line, i, str[i-posc]);
      //delay_ms(1);
      }
}
mình cũng dùng hàm lcd_display_char() để hiển thị chuỗi số thì hiển thị bình thường
mình không biết có lỗi gì nữa.
đây là hàm hiển thị chuỗi số của mình

///////////////////////////////////////////////////////////
void lcd_display_int16(int1 line, int8 posi, int16 x,int dauphay,int1 dau )
{
   int8 i;
   char str[5];
   char s[6];
   itoa(x,10,str);
   if(dau==1)
      s[0]=minus[0];//xac dinh dau
   else
      s[0]=pe[3];
// xu ly chuoi so
   if((0<=x)&(x<10))
      {
         for (i = 0; i < 3 ; i++)//hien thi 3 so không dang truoc gia tri
            s[i+1]=z[0];
         s[4+dauphay]=str[0];//gia tri
      }
   if((10<=x)&(x<100))
      {
         for (i = 0; i < 2 ; i++)
            s[i+1]=z[0];
         s[3]=str[0];
         s[4+dauphay]=str[1];
      }
   if((100<=x)&(x<1000))
      {
         s[1]=z[0];
         s[2]=str[0];
         s[3]=str[1];
         s[4+dauphay]=str[2];
      }
   if((1000<=x)&(x<10000))
      {
         for (i = 0; i < 3 ; i++)
            s[i+1]=str[i];
         s[4+dauphay]=str[3];
      }
   if(dauphay==1)
      s[4]=phay[0];
   for (i = posi; i < posi+5+dauphay ; i++)// hien thi chuoi so
      lcd_display_char(line, i, s[i-posi]);
hai hàm nay tương tự nhau
nhưng chỉ có hàm hiển thị số là hiển thị tốt còn hàm hiển thị sâu ký tự thì không hiển thị được.
dongbka vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn