#include #include #include const char *monthName[12] = {

#include #include #include const ch

#include
#include
#include

const char *monthName[12] = {
"Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
};

tmElements_t tm;

void setup() {
bool parse=false;
bool config=false;

// get the date and time the compiler was run
if (getDate(__DATE__) && getTime(__TIME__)) {
parse = true;
// and configure the RTC with this info
if (RTC.write(tm)) {
config = true;
}
}

Serial.begin(9600);
while (!Serial) ; // wait for Arduino Serial Monitor
delay(200);
if (parse && config) {
Serial.print("DS1307 configured Time=");
Serial.print(__TIME__);
Serial.print(", Date=");
Serial.println(__DATE__);
} else if (parse) {
Serial.println("DS1307 Communication Error :-{");
Serial.println("Please check your circuitry");
} else {
Serial.print("Could not parse info from the compiler, Time="");
Serial.print(__TIME__);
Serial.print("", Date="");
Serial.print(__DATE__);
Serial.println(""");
}
}

void loop() {
}

bool getTime(const char *str)
{
int Hour, Min, Sec;

if (sscanf(str, "%d:%d:%d", &Hour, &Min, &Sec) != 3) return false;
tm.Hour = Hour;
tm.Minute = Min;
tm.Second = Sec;
return true;
}

bool getDate(const char *str)
{
char Month[12];
int Day, Year;
uint8_t monthIndex;

if (sscanf(str, "%s %d %d", Month, &Day, &Year) != 3) return false;
for (monthIndex = 0; monthIndex < 12; monthIndex++) {
if (strcmp(Month, monthName[monthIndex]) == 0) break;
}
if (monthIndex >= 12) return false;
tm.Day = Day;
tm.Month = monthIndex + 1;
tm.Year = CalendarYrToTm(Year);
return true;
}
0/5000
จาก: -
เป็น: -
ผลลัพธ์ (ไทย) 1: [สำเนา]
คัดลอก!
#include #include #include ค่า const อักขระ * monthName [12] ={ "มกราคม" "กุมภาพันธ์" "มีนาคม" "เมษายน" "อาจ" "มิถุนายน" "กรกฎาคม" "สิงหาคม" "กันยายน" "ตุลาคม" "พฤศจิกายน" "ธันวาคม"};tmElements_t tm{ยกเลิก setup() ในการแยกวิเคราะห์ bool = false กำหนดค่า bool = false วันและเวลารันคอมไพเลอร์ ถ้า (getDate(__DATE__) & & getTime(__TIME__)) { แยก = true และตั้งค่าคอนฟิก RTC กับข้อมูลนี้ ถ้า (RTC.write(tm)) { กำหนดค่า = true } } Serial.begin(9600) ในขณะที่ (! ประจำ); รอตรวจสอบลำดับสืบ delay(200) ถ้า (แยก & & config) { Serial.print (" DS1307 กำหนดเวลา ="); Serial.print(__TIME__) Serial.print (", วัน ="); Serial.println(__DATE__) } ถ้าอื่น{(แยก) Serial.println ("ข้อผิดพลาดในการสื่อสาร DS1307: - {"); Serial.println ("กรุณาตรวจสอบของวงจร"); } {อื่น Serial.print ("ไม่สามารถกระจายข้อมูลจากคอมไพเลอร์ เวลา =" "); Serial.print(__TIME__) Serial.print (" ", วัน = ""); Serial.print(__DATE__) Serial.println(""") }}{ยกเลิก loop()}bool getTime (อักขระค่า const * str){ int ชั่วโมง นาที วินาที ถ้า (sscanf (str "% d:% d: %d", & ชั่วโมง นาที & วินาที) ! = 3) กลับเป็นเท็จ tm ชั่วโมง =ชั่วโมง tm นาทีนาที = tm สอง =วินาที กลับเป็นจริง}bool getDate (อักขระค่า const * str){ อักขระเดือน [12], int วัน ปี uint8_t monthIndex ถ้า (sscanf (str, "%s %d %d" เดือน วัน และปี) ! = 3) กลับเป็นเท็จ สำหรับ (monthIndex = 0; monthIndex < 12; monthIndex ++) { ถ้า (strcmp (เดือน monthName[monthIndex]) == 0) ทำลาย } ถ้า (monthIndex > = 12) กลับเป็นเท็จ tm วัน =วัน tm เดือน = monthIndex + 1 tm ปี = CalendarYrToTm(Year) กลับเป็นจริง}
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 2:[สำเนา]
คัดลอก!
#include
#include
#include

ถ่าน const * MonthName [12] = {
"แจ", "กุมภาพันธ์", "มาร์", "เมษายน", "พฤษภาคม", "มิถุนายน"
"กรกฎาคม", "สิงหาคม", "กันยายน", "ตุลาคม", " พฤศจิกายน "," ธันวาคม "
}; tmElements_t TM; การติดตั้งเป็นโมฆะ () { บูลแจง = false; การตั้งค่าบูล = false; // ได้รับวันที่และเวลาคอมไพเลอร์วิ่งถ้า (GETDATE (__ DATE__) && getTime (__ TIME__)) { แยก = true; // และกำหนดค่า RTC ด้วยข้อมูลนี้ถ้า (RTC.write (TM)) { การตั้งค่า = true; } } Serial.begin (9600); (! อนุกรม) ในขณะที่; // รอการตรวจสอบ Arduino อนุกรมล่าช้า (200); if (แยกการตั้งค่า &&) { Serial.print ("DS1307 กำหนดค่าเวลา ="); Serial.print (__ TIME__); Serial.print ("วัน ="); อนุกรม .println (__ DATE__); } else if (แจง) { Serial.println ("DS1307 การสื่อสารผิดพลาด: - {"); Serial.println ("กรุณาตรวจสอบวงจรของคุณ"); } else { Serial.print ("ไม่สามารถแยก ข้อมูลจากคอมไพเลอร์, เวลา = ""); Serial.print (__ TIME__); Serial.print ("" วัน = ""); Serial.print (__ DATE__); Serial.println ("" ") ; } } ห่วงเป็นโมฆะ () { } บูล getTime (ถ่าน const * STR) { int ชั่วโมง, นาที, วินาที; if (sscanf (STR, "% d:% d:% d", & ชั่วโมงและนาทีและวินาที) = 3) กลับเท็จ; tm.Hour = ชั่วโมง; tm.Minute Min =; = tm.Second วินาที; กลับจริง; } บูล GETDATE (const char * STR) { ถ่านเดือน [12]; int วันปี; uint8_t monthIndex; ถ้า (sscanf (STR, "% s% d% d" เดือนและวันและปี) = 3!) กลับเท็จ; สำหรับ (monthIndex = 0; monthIndex <12; monthIndex ++) { if (strcmp (เดือน MonthName [monthIndex ]) == 0) แบ่ง; } ถ้า (monthIndex> = 12) กลับเท็จ; tm.Day = วัน; tm.Month = monthIndex + 1; tm.Year = CalendarYrToTm (ปี); กลับจริง; }


































































การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 3:[สำเนา]
คัดลอก!
#รวมถึง < สาย H >
< #รวมเวลา H >
< ds1307rtc #รวม H >

Const char * มะเร็งตับ [ 12 ] = {
" มกราคม " , " กุมภาพันธ์ " , " มีนาคม " , " เมษายน " , " อาจจะ " , " มิถุนายน "
" ก.ค. " " ส.ค. " , " กันยายน " , " ตุลาคม " , " พฤศจิกายน " , " ธันวาคม "
} ;

tmelements_t TM ;

เป็นโมฆะ setup() {
บูลแยก = false ;
บูล config = false ;

/ / รับวันที่และเวลา คอมไพเลอร์ใช้
ถ้า ( getdate ( __date__ ) && gettime ( __time__ ) ) {

แยก = true ;/ / และปรับค่า RTC กับข้อมูล
นี้ถ้า ( RTC . เขียน ( TM ) ) {

} config = true ;
}

แบบต่อเนื่อง เริ่ม ( 9600 ) ;
ในขณะที่ ! อนุกรม ) ; / / รอ Arduino อนุกรมตรวจสอบ
ล่าช้า ( 200 ) ;
( ถ้าแยก&& config ) {
ต่อเนื่อง พิมพ์ ( " ds1307 กําหนดเวลา = " ) ;
ต่อเนื่อง พิมพ์ ( __time__ ) ;
ต่อเนื่อง พิมพ์ ( " วันที่ = " ) ;
println ( __date__ ) ต่อเนื่อง ;
} {
คนอื่นถ้า ( แยก ) ต่อเนื่อง println ( " ds1307 การสื่อสารผิดพลาด : - { ;
" )ต่อเนื่อง println ( " กรุณาตรวจสอบวงจร " ) ; } อื่น {

ต่อเนื่อง พิมพ์ ( " ไม่สามารถแยกข้อมูลจากคอมไพเลอร์ , เวลา = " ) ;
ต่อเนื่อง พิมพ์ ( __time__ ) ;
ต่อเนื่อง พิมพ์ ( " n " , วันที่ = " ) ;
อนุกรม พิมพ์ ( __date__ ) ;
ต่อเนื่อง println ( " " ) ; } }






} { โมฆะ loop() บูล gettime ( Const char * STR )
{
1 ชั่วโมง , นาที , วินาที ;

ถ้า ( sscanf ( STR , " % d : D : D " &ชั่วโมง &มิน &วินาที ) = 3 ) กลับเท็จ ;
TM . ชั่วโมง = ชั่วโมง ;
TM .นาที = มิน ;
TM . วินาทีที่สอง = ;
กลับจริง ;
}

บูล getdate ( Const char * STR )
{
char เดือน [ 12 ] ;
วันที่ , ปี uint8_t monthindex int ;
;

ถ้า ( sscanf ( STR , " %s %d %d " , เดือน && , วัน , ปี ) กลับเท็จ ;
3 ) = ( monthindex = 0 ; monthindex < 12 ; monthindex ) {
ถ้า ( strcmp ( เดือน มะเร็งตับ [ monthindex ] ) = = 0 )

ถ้าแบ่ง ; } ( monthindex > = 12 ) กลับเท็จ ;
TM . วัน = วันและเดือน = monthindex ;
. 1 ;
TM ปี = calendaryrtotm ( ปี ) ;

}
ผลตอบแทนจริง
การแปล กรุณารอสักครู่..
 
ภาษาอื่น ๆ
การสนับสนุนเครื่องมือแปลภาษา: กรีก, กันนาดา, กาลิเชียน, คลิงออน, คอร์สิกา, คาซัค, คาตาลัน, คินยารวันดา, คีร์กิซ, คุชราต, จอร์เจีย, จีน, จีนดั้งเดิม, ชวา, ชิเชวา, ซามัว, ซีบัวโน, ซุนดา, ซูลู, ญี่ปุ่น, ดัตช์, ตรวจหาภาษา, ตุรกี, ทมิฬ, ทาจิก, ทาทาร์, นอร์เวย์, บอสเนีย, บัลแกเรีย, บาสก์, ปัญจาป, ฝรั่งเศส, พาชตู, ฟริเชียน, ฟินแลนด์, ฟิลิปปินส์, ภาษาอินโดนีเซี, มองโกเลีย, มัลทีส, มาซีโดเนีย, มาราฐี, มาลากาซี, มาลายาลัม, มาเลย์, ม้ง, ยิดดิช, ยูเครน, รัสเซีย, ละติน, ลักเซมเบิร์ก, ลัตเวีย, ลาว, ลิทัวเนีย, สวาฮิลี, สวีเดน, สิงหล, สินธี, สเปน, สโลวัก, สโลวีเนีย, อังกฤษ, อัมฮาริก, อาร์เซอร์ไบจัน, อาร์เมเนีย, อาหรับ, อิกโบ, อิตาลี, อุยกูร์, อุสเบกิสถาน, อูรดู, ฮังการี, ฮัวซา, ฮาวาย, ฮินดี, ฮีบรู, เกลิกสกอต, เกาหลี, เขมร, เคิร์ด, เช็ก, เซอร์เบียน, เซโซโท, เดนมาร์ก, เตลูกู, เติร์กเมน, เนปาล, เบงกอล, เบลารุส, เปอร์เซีย, เมารี, เมียนมา (พม่า), เยอรมัน, เวลส์, เวียดนาม, เอสเปอแรนโต, เอสโทเนีย, เฮติครีโอล, แอฟริกา, แอลเบเนีย, โคซา, โครเอเชีย, โชนา, โซมาลี, โปรตุเกส, โปแลนด์, โยรูบา, โรมาเนีย, โอเดีย (โอริยา), ไทย, ไอซ์แลนด์, ไอร์แลนด์, การแปลภาษา.

Copyright ©2025 I Love Translation. All reserved.

E-mail: