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





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









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









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





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

نمایش نتایج: از 1 به 8 از 8
  1. #1
    2009/12/10
    501
    2

    تبدیل تاریخ میلادی به شمسی و نمایش روزهای هفته

    سلام من برای تبدیل تاریخ میلادی به شمسی از یه کد آماده که از همین سایت برداشتم استفاده کردم اما نمیتونه روز هفته رو نشون بده
    میخوام ببینم اصلا اینکار شدنیه؟ اگه آره کسی نمونه برنامه داره . من با بیسیک میخوام ممنونم
  2. #2
    2014/06/03
    808
    37

    پاسخ : تبدیل تاریخ میلادی به شمسی و نمایش روزهای هفته

    من با یکی از دوستان تاریخ شمسی را با همون بسکام نوشتیم.اما تبدیل از میلادی به شمسی را انجام ندادیم.یعنی تقویم مستقل عمل می کنه.روز هفته هم نداشت.اگه خواستید بگید تا به اون دوستمون بگم اگه هنوز برنامشو داره بهتون بده.
    آیا جهالت نیست که آدمی ساعات شیرین امروز را فدای روزهای آینده کند؟
  3. #3
    2014/07/19
    137
    6

    پاسخ : تبدیل تاریخ میلادی به شمسی و نمایش روزهای هفته

    سلام pooyan-shafiei
    اگه ممکنه برنامه رو بذارید
    ممنون
  4. #4
    2014/06/03
    808
    37

    پاسخ : تبدیل تاریخ میلادی به شمسی و نمایش روزهای هفته

    متاسفانه فایلش را نتونستم از اون دوستمون بگیرم.من خودم بیسکام بلد نیستم.اما خیلی ساده توضیح می دم.شما سه تا متغیر تعریف می کنید واسه سال و ماه و روز.
    بعد میگین که اگه ساعت برابر 24 شد ساعت صفر بشه به روز یکی اضافه بشه.بعد اگه ماه بین 1 تا 6 بود و روز شد 32،ماه یکی بره جلو بعد روز 1 بشه.(روز صفر نداریم) و اگه ماه بزرگ تر از 6 بود و روز به 31 رسید،ماه یکی بره جلو و روز 1 بشه.در آخر اگه ماه 13 شد،سال یکی بره جلو و ماه 1 بشه(ماه صفر نداریم).
    اگه خواستید میتونید واسه اسفند هم که 29 روزی میشه شرط جدا بذارید.
    واسه روز هفته هم خیلی ساده میشه یک متغیر تعریف کرد.اسن فایل سی هست که خودم تست کردم کار کرد.البته قسمت ساعتش با ds1307 کار میکنه.
    از همه ی دوستان بابت تاخیر عذر می خوام.
    سوالی هم داشتین در خدمتم.
    کد:
    /*****************************************************
    This program was produced by the
    CodeWizardAVR V2.05.3 Standard
    Automatic Program Generator
    © Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.
    http://www.hpinfotech.com
    
    Project :
    Version :
    Date  : 21/09/2014
    Author : Puyan
    Company :
    Comments:
    
    
    Chip type        : ATmega16A
    Program type      : Application
    AVR Core Clock frequency: 2.000000 MHz
    Memory model      : Small
    External RAM size    : 0
    Data Stack size     : 256
    *****************************************************/
    #include <stdio.h>
    #include <mega16a.h>
    #include <delay.h>
    // I2C Bus functions
    #include <i2c.h>
    
    // DS1307 Real Time Clock functions
    #include <ds1307.h>
    
    // Alphanumeric LCD functions
    #include <alcd.h>
    
    // Declare your global variables here
    
    void main(void)
    {
    char lcd[16];
    char tarikh[16];
    unsigned char hour=0, minute=0, second=0, month=6, day=30;
    unsigned int year=1393;
    // Declare your local variables here
    
    // Input/Output Ports initialization
    // Port A initialization
    // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
    // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
    PORTA=0x00;
    DDRA=0x00;
    
    // Port B initialization
    // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
    // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
    PORTB=0x00;
    DDRB=0x00;
    
    // Port C initialization
    // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
    // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
    PORTC=0x00;
    DDRC=0x00;
    
    // Port D initialization
    // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
    // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
    PORTD=0x00;
    DDRD=0x00;
    
    // Timer/Counter 0 initialization
    // Clock source: System Clock
    // Clock value: Timer 0 Stopped
    // Mode: Normal top=0xFF
    // OC0 output: Disconnected
    TCCR0=0x00;
    TCNT0=0x00;
    OCR0=0x00;
    
    // Timer/Counter 1 initialization
    // Clock source: System Clock
    // Clock value: Timer1 Stopped
    // Mode: Normal top=0xFFFF
    // OC1A output: Discon.
    // OC1B output: Discon.
    // Noise Canceler: Off
    // Input Capture on Falling Edge
    // Timer1 Overflow Interrupt: Off
    // Input Capture Interrupt: Off
    // Compare A Match Interrupt: Off
    // Compare B Match Interrupt: Off
    TCCR1A=0x00;
    TCCR1B=0x00;
    TCNT1H=0x00;
    TCNT1L=0x00;
    ICR1H=0x00;
    ICR1L=0x00;
    OCR1AH=0x00;
    OCR1AL=0x00;
    OCR1BH=0x00;
    OCR1BL=0x00;
    
    // Timer/Counter 2 initialization
    // Clock source: System Clock
    // Clock value: Timer2 Stopped
    // Mode: Normal top=0xFF
    // OC2 output: Disconnected
    ASSR=0x00;
    TCCR2=0x00;
    TCNT2=0x00;
    OCR2=0x00;
    
    // External Interrupt(s) initialization
    // INT0: Off
    // INT1: Off
    // INT2: Off
    MCUCR=0x00;
    MCUCSR=0x00;
    
    // Timer(s)/Counter(s) Interrupt(s) initialization
    TIMSK=0x00;
    
    // USART initialization
    // USART disabled
    UCSRB=0x00;
    
    // Analog Comparator initialization
    // Analog Comparator: Off
    // Analog Comparator Input Capture by Timer/Counter 1: Off
    ACSR=0x80;
    SFIOR=0x00;
    
    // ADC initialization
    // ADC disabled
    ADCSRA=0x00;
    
    // SPI initialization
    // SPI disabled
    SPCR=0x00;
    
    // TWI initialization
    // TWI disabled
    TWCR=0x00;
    
    // I2C Bus initialization
    // I2C Port: PORTA
    // I2C SDA bit: 1
    // I2C SCL bit: 0
    // Bit Rate: 100 kHz
    // Note: I2C settings are specified in the
    // Project|Configure|C Compiler|Libraries|I2C menu.
    i2c_init();
    
    // DS1307 Real Time Clock initialization
    // Square wave output on pin SQW/OUT: Off
    // SQW/OUT pin state: 0
    rtc_init(0,0,0);
    
    // Alphanumeric LCD initialization
    // Connections are specified in the
    // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
    // RS - PORTD Bit 0
    // RD - PORTD Bit 1
    // EN - PORTD Bit 2
    // D4 - PORTD Bit 4
    // D5 - PORTD Bit 5
    // D6 - PORTD Bit 6
    // D7 - PORTD Bit 7
    // Characters/line: 16
    lcd_init(16);
    lcd_clear();
    rtc_set_time(12, 0, 0);
    while (1)
       {
       lcd_clear();
       // Place your code here
       rtc_get_time(&hour,&minute,&second);
       sprintf(lcd,"%02u:%02u:%02u",hour,minute,second);
       sprintf(tarikh, "%04u/%02u/%02u", year,month,day);
       lcd_gotoxy(4 ,0);
       lcd_puts(lcd);
    
       lcd_gotoxy(3 , 1);
       lcd_puts(tarikh);
    
       if(hour == 24)
       {
        day++;
        hour = 0;
       }
       if(day == 31 && month >= 7)
       {
        month++;
        day = 1;
       }
       else if(day == 32 && month < 7)
       {
        month++;
        day = 1;
       }
       if(month == 13)
       {
        year++;
        month = 1;
       }
       delay_ms(300);
    }
    }
    آیا جهالت نیست که آدمی ساعات شیرین امروز را فدای روزهای آینده کند؟
  5. #5
    2008/07/11
    255
    6

    پاسخ : تبديل تاريخ ميلادي به شمسي و نمايش روز


    اين کد رو 3 سال پيش استفاده کردم جواب داد.فکر کنم از کتاب ره افروز باشه تا اونجايي که يادمه يکم ايراد داشت برطرف کردم. روز هفته رو هم در پست بعدي ميگذارم.
    کد:
    //-----------------------------------تعريف متغيير---------------------------------------- 
    flash unsigned char shmtable[6][12]={
    {11,10,10,9,9,9,8,9,9,10,11,9},{20,20,21,21,22,22,22,22,21,21,20,19},{11,10,10,9,9,9,8,9,9,10,11,10},
    {20,20,21,21,22,22,22,22,21,21,20,19},{12,11,11,10,10,10,9,10,10,11,12,10},
    {19,19,20,20,21,21,21,21,20,20,19,18}};
    flash unsigned char miltable[6][12]={{20,19,19,19,20,20,21,21,21,21,20,20},
    {10,11,10,12,11,11,10,10,10,9,10,10},{19,18,20,20,21,21,22,22,22,22,21,21},
    {11,12,10,11,10,10,9,9,9,8,9,9},{20,19,20,20,21,21,22,22,22,22,21,21},{10,11,9,11,10,10,9,9,9,8,9,9}};
    struct date{
    unsigned char day;
    unsigned char month;
    unsigned char year;
    };
    struct date shmdate;
    //---------------------------------------------------------------------------------------
    void miltoshmcv(unsigned char ym,unsigned char mm,unsigned char dm);
    // ------------------------------------ تعريف تابع --------------------------------
    void miltoshmcv(unsigned char ym,unsigned char mm,unsigned char dm)
    {
    unsigned char k,t1,t2;
    k=ym%4;
    if(k==3)
    k=2;
    k*=2;
    t1=miltable[k][mm-1];
    t2=miltable[k+1][mm-1];
    if(mm<3 || (mm==3&&dm<=miltable[k][mm-1]))
    shmdate.year=ym+78;
    else
    shmdate.year=ym+79;
    if(dm<=t1)
    {
    shmdate.day=dm+t2;
    shmdate.month=(mm+8)%12+1;
    }
    else
    {
    shmdate.day=dm-t1;
    shmdate.month=(mm+9)%12+1;
    }
     
    }
    //--------------------------------------- While نحوه فراخواني در حلقه -----------------------------------
    miltoshmcv(day,month,year);
    sprintf(buffer," %02u/%01u/%02u",shmdate.year,shmdate.month,shmdate.day);
    lcd_gotoxy(0,0);
     lcd_puts(buffer);
    //---------------------------------------------------------------------------------------------------------------
  6. #6
    2008/07/11
    255
    6

    پاسخ : تبديل تاريخ ميلادي به شمسي و نمايش روز

    کد:
    روز هفته .اون ايرادي که گفتم ايراد چاپي بود!! اميدوارم جواب بده.
    //---------------------------------تعريف متغيير------------------------------
    struct days{char d[4];} daysofweek[7]={{"We"},{"Th"},{"Fr"},{"Sa"},{"Su"},{"Mo"},{"Tu"}};
    //-------------------------------------------------------------------------------
    char IsLeapYear(int Year);
    char GetDayofWeek(unsigned char CurrentYear,unsigned char Month,unsigned char Day);
    //-----------تابع اول-----------------تعريف توابع-------------------------------
     char IsLeapYear(int Year)
    {
    Year=Year&0x0003;
    if(Year==0)
    return 1;
    else
    return 0;
    }
    char CheckValidInput(unsigned int Input)
    {
    if(Input>=1990 && Input<=2099)
    return OK;
    else
    return !OK;
    }
    //---------------------------------------------------تابع دوم---------------------------------
    char GetDayofWeek(unsigned char CurrentYear,unsigned char Month,unsigned char Day)
    {
    unsigned int TempYear;
    unsigned char AccValue;
    if(CheckValidInput(CurrentYear+2000)!=OK)
    return Error;
    TempYear=1990;
    AccValue=0;
    while(TempYear!=(CurrentYear+2000))
    {
    AccValue++;
    if(IsLeapYear(TempYear))
    AccValue++;
    TempYear++;
    }
    if(Month>2)
    {
    if(IsLeapYear(TempYear)==1)
    AccValue++;
    }
    AccValue+=Table[Month];
    AccValue+=Day;
    AccValue=AccValue%7;
    return(AccValue);
    }
    //----------------------------------------------نحوه فراخواني-----------------------------------
    sprintf(buffer,"%s",daysofweek[GetDayofWeek(year,month,day)].d,);
       lcd_gotoxy(0,0);
       lcd_puts(buffer);
  7. #7
    2009/12/10
    501
    2

    پاسخ : تبدیل تاریخ میلادی به شمسی و نمایش روزهای هفته

    ممنون از لطف همتون. اما من با بیسیک میخواستم اما همین که کمکی برای دیگران شد باز خوبه
  8. #8
    2014/06/03
    808
    37

    پاسخ : تبدیل تاریخ میلادی به شمسی و نمایش روزهای هفته

    اون برنامه ای که من گفتم خیلی سادس.فقط کافیه شرط ها را به بیسکام بنویسید.
    آیا جهالت نیست که آدمی ساعات شیرین امروز را فدای روزهای آینده کند؟
نمایش نتایج: از 1 به 8 از 8

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

  1. اینم تبدیل تاریخ میلادی به شمسی در ds1307 با CodeVisionAVR C Compiler
    توسط iranieee در انجمن میکروکنترلرهای AVR
    پاسخ: 6
    آخرين نوشته: 2017/09/14, 11:08
  2. تبدیل تاریخ میلادی به شمسی در کدویژن
    توسط david24 در انجمن میکروکنترلرهای AVR
    پاسخ: 2
    آخرين نوشته: 2016/03/02, 09:40
  3. مشکل در نمایش همزمان تاریخ های شمسی،میلادی،قمری
    توسط ahmad6870 در انجمن میکروکنترلرهای AVR
    پاسخ: 4
    آخرين نوشته: 2014/04/18, 22:31
  4. تبدیل تاریخ شمسی به میلادی
    توسط mikla در انجمن میکروکنترلرهای AVR
    پاسخ: 13
    آخرين نوشته: 2008/08/07, 22:49
  5. تبدیل تاریخ میلادی به شمسی و بر عکس در bascom
    توسط farhad_year2004 در انجمن میکروکنترلرهای AVR
    پاسخ: 4
    آخرين نوشته: 2007/12/21, 17:10

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

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

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

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

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