ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 6 از 6
  1. #1
    2019/07/17
    فریدونکنار
    4
    0

    ال سی دی کاراکتری

    عرض سلام و ادب و ارزوی قبولی عبادات.
    میخواستم بدونم چطوری میشه همزمان روی ال سی دی هم متغییر float و هم int رو نشون داد؟ چون هرکار کردم فقط میشه یکی از اینا رو نشون داد
    لطفا کمک کنین
    ممنون.
  2. #2
    2020/04/15
    16
    0

    پاسخ : ال سی دی کاراکتری

    نقل قول نوشته اصلی توسط donnarumma

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    عرض سلام و ادب و ارزوی قبولی عبادات.
    میخواستم بدونم چطوری میشه همزمان روی ال سی دی هم متغییر float و هم int رو نشون داد؟ چون هرکار کردم فقط میشه یکی از اینا رو نشون داد
    لطفا کمک کنین
    ممنون.
    سلام .
    لطفا کدتون رو اینجا قرار بدین تا بتونیم راهنماییتون کنیم
  3. #3
    2019/07/17
    فریدونکنار
    4
    0

    پاسخ : ال سی دی کاراکتری

    نقل قول نوشته اصلی توسط peypy

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    سلام .
    لطفا کدتون رو اینجا قرار بدین تا بتونیم راهنماییتون کنیم

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    <mega32.h>

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    <delay.h>

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    <stdio.h>

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    <alcd.h>

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    <shtxx.h>


    eeprom unsigned int second=0,minute=0,hour=0,day=0;
    eeprom unsigned int i,j,k;


    interrupt [TIM1_OVF] void timer1_ovf_isr(void)
    {
    TCNT1H=0x85EE >> 8;
    TCNT1L=0x85EE & 0xff;
    if(second>=59){
    second=0;
    if(minute>=59){
    minute=0;
    if(hour>=23){
    hour=0;
    if(day>=46)
    day=0;
    else
    day++;
    }
    else
    hour++;
    }
    else
    minute++;
    }
    else
    second++;


    }


    void main(void)
    {
    float Temperature ;
    float Humidity ;
    char Buffer_LCD[16];
    char timer_lcd[32];
    lcd_init(16);
    DDRB.7=0;
    PORTB.7=1;
    DDRB.6=1;
    PORTB.6=0;

    // Timer/Counter 1 initialization
    // Clock source: System Clock
    // Clock value: 31.250 kHz
    // Mode: Normal top=0xFFFF
    // OC1A output: Disconnected
    // OC1B output: Disconnected
    // Noise Canceler: Off
    // Input Capture on Falling Edge
    // Timer Period: 1 s
    // Timer1 Overflow Interrupt: On
    // Input Capture Interrupt: Off
    // Compare A Match Interrupt: Off
    // Compare B Match Interrupt: Off
    TCCR1A=(0<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (0<<WGM10);
    TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (1<<CS12) | (0<<CS11) | (0<<CS10);
    TCNT1H=0x85;
    TCNT1L=0xEE;
    ICR1H=0x00;
    ICR1L=0x00;
    OCR1AH=0x00;
    OCR1AL=0x00;
    OCR1BH=0x00;
    OCR1BL=0x00;
    // Timer(s)/Counter(s) Interrupt(s) initialization
    TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) | (0<<OCIE1B) | (1<<TOIE1) | (0<<OCIE0) | (0<<TOIE0);






    while (1)
    {
    lcd_clear();
    sprintf(timer_lcd,"%d %d:%d:%d ",day,hour,minute,second);
    lcd_puts(timer_lcd);
    delay_ms(2000);
    lcd_clear();
    Humidity=read_sensor(0);
    Temperature=read_sensor(1);
    lcd_clear();
    sprintf(Buffer_LCD,"HUMIDITY =%3.1f%%",Humidity); lcd_gotoxy(0,0); lcd_puts(Buffer_LCD);
    sprintf(Buffer_LCD,"TEMP =%3.1fC",Temperature); lcd_gotoxy(0,1); lcd_puts(Buffer_LCD);
    delay_ms(1000);

    }
    }
    ممنونم
  4. #4
    2020/03/23
    22
    1

    پاسخ : ال سی دی کاراکتری

    دقیقا کدوم خط از کد مشکل شما هست؟
  5. #5
    2019/07/17
    فریدونکنار
    4
    0

    پاسخ : ال سی دی کاراکتری

    نقل قول نوشته اصلی توسط expl

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    دقیقا کدوم خط از کد مشکل شما هست؟
    خط اول تا چهارم بعد از(1) while
  6. #6
    2020/03/23
    22
    1

    پاسخ : ال سی دی کاراکتری

    نقل قول نوشته اصلی توسط donnarumma

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    خط اول تا چهارم بعد از(1) while


    اگه متغیر اصلی خودش از نوع float هست و شما می خواهید به صورت integer در نظر گرفته بشه، کافیه پشتش (int) بگذارید که اصلاحا بهش میگن type-casting. اگر هم ای نوع int هست و می خواهید به صورت float نشون داده بشه (که قطعا اعشارش صفر خواهد بود) کافیه پشت متغیر عبارت (float) بنویسید. مثلا:
    کد:
    float day,hour,minute,second;
    
    sprintf(timer_lcd, "%d %d %d %d, (int)day, (int)hour, (int)minute, (int)second); ===> print float as integer
    sprintf(timer_lcd, "%0.2f %0.2f %0.2f %0.2f, day, hour, minute, second); ==> print float as float
    
    
نمایش نتایج: از 1 به 6 از 6

موضوعات مشابه

  1. کم نور شدن lcd کاراکتری
    توسط adrianjavad در انجمن خانواده Arduino
    پاسخ: 4
    آخرين نوشته: 2019/10/30, 17:50
  2. LCD کاراکتری 20*4
    توسط mohammad.che92 در انجمن NXP
    پاسخ: 9
    آخرين نوشته: 2017/08/02, 04:13
  3. ال سی دی کاراکتری
    توسط tohid041 در انجمن میکروکنترلرهای AVR
    پاسخ: 7
    آخرين نوشته: 2015/05/09, 09:50
  4. کی پد کاراکتری
    توسط shama2080 در انجمن میکروکنترلرهای AVR
    پاسخ: 1
    آخرين نوشته: 2014/01/11, 11:39
  5. lcd کاراکتری
    توسط s699fx_bpr در انجمن NXP
    پاسخ: 11
    آخرين نوشته: 2012/01/25, 21:09

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •