Trích:
Nguyên văn bởi ElecTel
cảm ơn tdm ! thực ra mình viết chương trình chỉnh PID hiển thị lên với các số liệu PID được nhập vào.tạo 1 menu gồm P;I;D Có 4 phím điều khiển(up,down,cancel,enter) nhưng mà bí quá mình chỉ làm được thế này thôi
Code:
signed int 8 count=0;
Void push_key()
{
if(B1==0) //nut o chan B1 duoc nhan
{
delay_ms(150); //delay qua xung nhieu
while(B1==0) //cho den khi tha
{;}
count++; //dem so lan bam nut
}
else if(B2==0) //nut o chan b2 duoc nhan
{
delay_ms(150);
while(B2==0)
{;}
count--; //dem so lan bam nut
}
if(count<0)
count=0;
else if(count>99)
count=99
return count;
}
void menu_control()
{
lcd_init();
lcd_gotoxy(9,1); // cot 9 hang 1
lcd_putc("Menu controler");
lcd_gotoxy(1,2);
lcd_putc("K=");
lcd_gotoxy(3,2);
lcd_putc(count);
lcd_gotoxy(7,2);
lcd_putc("I=");
lcd_gotoxy(9,2);
lcd_putc(count);
lcd_gotoxy(13,2);
lcd_putc("D=");
lcd_gotoxy(14,2);
lcd_putc(count);
Mình xem lại đoạn code của mình thì thấy nó ko ổn ngay từ bước hiển thị ban đầu ,chắc chắn chỉ hiển thị "k=0 i=0 d=0" làm sao để tạo được 1 menu k;i;d và bắt đầu đièu khiển(tăng/giảm) từng menu 1 được???
|
dùng thêm một nút nhấn để lựa chọn k,i,d.
sau mỗi lần cập nhập giá trị lưu vào eeprom.