Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Plik main.c
- TERMOMETR
- */
- #define F_CPU 1000000UL
- #include <avr/io.h>
- #include <util/delay.h>
- #include "hd44780.h"
- #include "ds1820.h"
- void lcd(void){
- _delay_ms(1000);
- lcd_init();
- LCD_DISPLAY(LCDDISPLAY);
- LCD_CLEAR;
- LCD_LOCATE(5,0);
- LCD_WRITE_DATA('W');
- _delay_ms(200);
- LCD_WRITE_DATA('i');
- _delay_ms(200);
- LCD_WRITE_DATA('t');
- _delay_ms(200);
- LCD_WRITE_DATA('a');
- _delay_ms(200);
- LCD_WRITE_DATA('j');
- _delay_ms(200);
- LCD_WRITE_DATA('!');
- _delay_ms(2000);
- LCD_CLEAR;
- LCD_LOCATE(1,0);
- lcd_puts("Milej podrozy");
- _delay_ms(100);
- LCD_LOCATE(0,4);
- lcd_puts("Michale!");
- _delay_ms(2200);
- LCD_CLEAR;
- }
- int main(){
- unsigned char sprawdz;
- char temp1, temp2, temp3, temp4;
- temp1=temp2=temp3=temp4=0;
- lcd();
- while(1)
- {
- sprawdz=RESET_PULSE();
- if(sprawdz==1){
- send_byte(0xF0);
- send_byte(0x44);
- _delay_ms(750);
- sprawdz=RESET_PULSE();
- send_byte(0xCC);
- send_byte(0xBE);
- temp1=read_byte();
- temp2=read_byte();
- sprawdz=RESET_PULSE();
- float temp=0;
- temp=(float)(temp1+(temp2*256))/2.0;
- dtostrf(temp,5,1,buf);
- LCD_LOCATE(0,0);
- lcd_puts(buf);
- _delay_ms(200);
- }
- else{
- LCD_LOCATE(0,0);
- lcd_puts("Nie wykryto DSa");
- }
- LCD_CLEAR;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment