From 97f6816da959de17946e1471b3917d98e01be46e Mon Sep 17 00:00:00 2001 From: AceVest Date: Thu, 11 Jan 2018 00:19:26 +0800 Subject: [PATCH] ... --- arduino/clockintr/clockintr.ino | 96 ++++++++++ arduino/ir/irrecv/irrecv.ino | 179 ++++++++++++++++++ arduino/ir/irsend/irsend.ino | 46 +++++ documents/ArduinoClockInterrupt.md | 126 ++++++++++++ ...26\347\272\277\347\274\226\347\240\201.md" | 45 +++++ tools/AceBox/AceBox.xcodeproj/project.pbxproj | 12 ++ .../UserInterfaceState.xcuserstate | Bin 93552 -> 114416 bytes tools/AceBox/AceBox/AppDelegate.swift | 12 +- .../AceBox/AceBox/Base.lproj/LaunchScreen.xib | 25 ++- .../AceBox/AceBox/Base.lproj/Main.storyboard | 2 +- tools/AceBox/AceBox/Info.plist | 12 ++ .../AceBox/AceBox/SecondViewController.swift | 76 +++++++- 12 files changed, 615 insertions(+), 16 deletions(-) create mode 100644 arduino/clockintr/clockintr.ino create mode 100644 arduino/ir/irrecv/irrecv.ino create mode 100644 arduino/ir/irsend/irsend.ino create mode 100644 documents/ArduinoClockInterrupt.md create mode 100644 "documents/\351\201\245\346\216\247\347\272\242\345\244\226\347\272\277\347\274\226\347\240\201.md" diff --git a/arduino/clockintr/clockintr.ino b/arduino/clockintr/clockintr.ino new file mode 100644 index 0000000..25f0363 --- /dev/null +++ b/arduino/clockintr/clockintr.ino @@ -0,0 +1,96 @@ + +int led0 = 7; +int led1 = 8; +int led2 = 12; +int cnt0 = 0; +int cnt1 = 0; +int cnt2 = 0; +void setup(){ + Serial.begin(9600); + pinMode(LED_BUILTIN, OUTPUT); + pinMode(led0, OUTPUT); + pinMode(led1, OUTPUT); + pinMode(led2, OUTPUT); + + cli();//stop interrupts + +#if 0 // 设置timer0会影响到loop函数里调用的delay,会使其失效 + //set timer0 interrupt at 2kHz + TCCR0A = 0;// set entire TCCR0A register to 0 + TCCR0B = 0;// same for TCCR0B + TCNT0 = 0;//initialize counter value to 0 + // set compare match register for 2khz increments + OCR0A = 124;// = (16*10^6) / (2000*64) - 1 (must be <256) + // turn on CTC mode + TCCR0A |= (1 << WGM01); + // Set CS01 and CS00 bits for 64 prescaler (参考上表) + TCCR0B |= (1 << CS01) | (1 << CS00); + // enable timer compare interrupt + TIMSK0 |= (1 << OCIE0A); +#endif + +#if 1 + //set timer1 interrupt at 1Hz + TCCR1A = 0;// set entire TCCR1A register to 0 + TCCR1B = 0;// same for TCCR1B + TCNT1 = 0;//initialize counter value to 0 + // set compare match register for 1hz increments + OCR1A = 15624;// = (16*10^6) / (1*1024) - 1 (must be <65536) + // turn on CTC mode + TCCR1B |= (1 << WGM12); + // Set CS10 and CS12 bits for 1024 prescaler (参考上表) + TCCR1B |= (1 << CS12) | (1 << CS10); + // enable timer compare interrupt + TIMSK1 |= (1 << OCIE1A); +#endif + +#if 1 + //set timer2 interrupt at 8kHz + TCCR2A = 0;// set entire TCCR2A register to 0 + TCCR2B = 0;// same for TCCR2B + TCNT2 = 0;//initialize counter value to 0 + // set compare match register for 8khz increments + OCR2A = 249;// = (16*10^6) / (8000*8) - 1 (must be <256) + // turn on CTC mode + TCCR2A |= (1 << WGM21); + // Set CS21 bit for 8 prescaler (参考上表) + TCCR2B |= (1 << CS21); + // enable timer compare interrupt + TIMSK2 |= (1 << OCIE2A); +#endif + + sei();//allow interrupts + +}//end setup + +void loop() { + Serial.println("High"); + digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) + delay(1000); // wait for a second + + Serial.println("Low"); + digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW + delay(1000); // wait for a second +} + +ISR(TIMER0_COMPA_vect){ + cnt0++; + if(cnt0 % 1000 == 0) { + cnt0 == 0; + digitalWrite(led0, !digitalRead(led0)); + } +} + +ISR(TIMER1_COMPA_vect){ + cnt1++; + digitalWrite(led1, !digitalRead(led1)); +} + +ISR(TIMER2_COMPA_vect) { + cnt2++; + if(cnt2 % 1000 == 0) { + cnt2 = 0; + digitalWrite(led2, !digitalRead(led2)); + } +} + diff --git a/arduino/ir/irrecv/irrecv.ino b/arduino/ir/irrecv/irrecv.ino new file mode 100644 index 0000000..445838d --- /dev/null +++ b/arduino/ir/irrecv/irrecv.ino @@ -0,0 +1,179 @@ +//------------------------------------------------------------------------------ +// Include the IRremote library header +// +#include + +// HX1838(用金属包住头) 面对HX1838正面从左至右三个脚分别为 OUT、GND、VCC + +//------------------------------------------------------------------------------ +// Tell IRremote which Arduino pin is connected to the IR Receiver (TSOP4838) +// +int recvPin = 11; +IRrecv irrecv(recvPin); + +//+============================================================================= +// Configure the Arduino +// +void setup ( ) +{ + Serial.begin(9600); // Status message will be sent to PC at 9600 baud + irrecv.enableIRIn(); // Start the receiver +} + +//+============================================================================= +// Display IR code +// +void ircode (decode_results *results) +{ + // Panasonic has an Address + if (results->decode_type == PANASONIC) { + Serial.print(results->address, HEX); + Serial.print(":"); + } + + // Print Code + Serial.print(results->value, HEX); +} + +//+============================================================================= +// Display encoding type +// +void encoding (decode_results *results) +{ + switch (results->decode_type) { + default: + case UNKNOWN: Serial.print("UNKNOWN"); break ; + case NEC: Serial.print("NEC"); break ; + case SONY: Serial.print("SONY"); break ; + case RC5: Serial.print("RC5"); break ; + case RC6: Serial.print("RC6"); break ; + case DISH: Serial.print("DISH"); break ; + case SHARP: Serial.print("SHARP"); break ; + case JVC: Serial.print("JVC"); break ; + case SANYO: Serial.print("SANYO"); break ; + case MITSUBISHI: Serial.print("MITSUBISHI"); break ; + case SAMSUNG: Serial.print("SAMSUNG"); break ; + case LG: Serial.print("LG"); break ; + case WHYNTER: Serial.print("WHYNTER"); break ; + case AIWA_RC_T501: Serial.print("AIWA_RC_T501"); break ; + case PANASONIC: Serial.print("PANASONIC"); break ; + case DENON: Serial.print("Denon"); break ; + } +} + +//+============================================================================= +// Dump out the decode_results structure. +// +void dumpInfo (decode_results *results) +{ + // Check if the buffer overflowed + if (results->overflow) { + Serial.println("IR code too long. Edit IRremoteInt.h and increase RAWBUF"); + return; + } + + // Show Encoding standard + Serial.print("Encoding : "); + encoding(results); + Serial.println(""); + + // Show Code & length + Serial.print("Code : "); + ircode(results); + Serial.print(" ("); + Serial.print(results->bits, DEC); + Serial.println(" bits)"); +} + +//+============================================================================= +// Dump out the decode_results structure. +// +void dumpRaw (decode_results *results) +{ + // Print Raw data + Serial.print("Timing["); + Serial.print(results->rawlen-1, DEC); + Serial.println("]: "); + + for (int i = 1; i < results->rawlen; i++) { + unsigned long x = results->rawbuf[i] * USECPERTICK; + if (!(i & 1)) { // even + Serial.print("-"); + if (x < 1000) Serial.print(" ") ; + if (x < 100) Serial.print(" ") ; + Serial.print(x, DEC); + } else { // odd + Serial.print(" "); + Serial.print("+"); + if (x < 1000) Serial.print(" ") ; + if (x < 100) Serial.print(" ") ; + Serial.print(x, DEC); + if (i < results->rawlen-1) Serial.print(", "); //',' not needed for last one + } + if (!(i % 8)) Serial.println(""); + } + Serial.println(""); // Newline +} + +//+============================================================================= +// Dump out the decode_results structure. +// +void dumpCode (decode_results *results) +{ + // Start declaration + Serial.print("unsigned int "); // variable type + Serial.print("rawData["); // array name + Serial.print(results->rawlen - 1, DEC); // array size + Serial.print("] = {"); // Start declaration + + // Dump data + for (int i = 1; i < results->rawlen; i++) { + Serial.print(results->rawbuf[i] * USECPERTICK, DEC); + if ( i < results->rawlen-1 ) Serial.print(","); // ',' not needed on last one + if (!(i & 1)) Serial.print(" "); + } + + // End declaration + Serial.print("};"); // + + // Comment + Serial.print(" // "); + encoding(results); + Serial.print(" "); + ircode(results); + + // Newline + Serial.println(""); + + // Now dump "known" codes + if (results->decode_type != UNKNOWN) { + + // Some protocols have an address + if (results->decode_type == PANASONIC) { + Serial.print("unsigned int addr = 0x"); + Serial.print(results->address, HEX); + Serial.println(";"); + } + + // All protocols have data + Serial.print("unsigned int data = 0x"); + Serial.print(results->value, HEX); + Serial.println(";"); + } +} + +//+============================================================================= +// The repeating section of the code +// +void loop ( ) +{ + decode_results results; // Somewhere to store the results + + if (irrecv.decode(&results)) { // Grab an IR code + dumpInfo(&results); // Output the results + dumpRaw(&results); // Output the results in RAW format + dumpCode(&results); // Output the results as source code + Serial.println(""); // Blank line between entries + irrecv.resume(); // Prepare for the next value + } +} diff --git a/arduino/ir/irsend/irsend.ino b/arduino/ir/irsend/irsend.ino new file mode 100644 index 0000000..c30aac6 --- /dev/null +++ b/arduino/ir/irsend/irsend.ino @@ -0,0 +1,46 @@ +/* + * IRremote: IRsendDemo - demonstrates sending IR codes with IRsend + * An IR LED must be connected to Arduino PWM pin 3. + * Version 0.1 July, 2009 + * Copyright 2009 Ken Shirriff + * http://arcfn.com + */ + + +// arduino ~3号引脚接940纳米发送头的长引脚 +// 短引脚接100欧电阻,再接GND + +#include + +IRsend irsend; + +void setup() +{ + Serial.begin(9600); +} + +void loop() { + + // 电信机顶盒用NEC发送 + + irsend.sendNEC(0xCD3201FE, 32); // 音量+ + Serial.println("+"); + delay(1000); + irsend.sendNEC(0xCD32817E, 32); // 音量- + Serial.println("-"); + delay(1000); + + + // 小米电视遥控 + int khz = 38; // 38kHz carrier frequency for the NEC protocol + // xiaomi increase volume signal + unsigned int ivs[] = {1000,600, 550,1150, 600,600, 550,900, 550,1150, 600,550, 600,600, 550,1450, 550,1200, 550,600, 550,600, 550}; + // xiaomi decrease volume signal + unsigned int dvs[] = {1050,550, 650,1050, 650,500, 650,800, 650,1100, 650,500, 650,500, 650,1400, 650,1350, 650,500, 650,800, 650}; + irsend.sendRaw(ivs, sizeof(ivs) / sizeof(ivs[0]), khz); + Serial.println("tv+"); + delay(1000); + irsend.sendRaw(dvs, sizeof(dvs) / sizeof(dvs[0]), khz); + Serial.println("tv-"); + delay(1000); +} diff --git a/documents/ArduinoClockInterrupt.md b/documents/ArduinoClockInterrupt.md new file mode 100644 index 0000000..b89fe99 --- /dev/null +++ b/documents/ArduinoClockInterrupt.md @@ -0,0 +1,126 @@ +# arduino clock interrupt + +## Clock Select Bit Description + + +|CS02|CS01|CS00|Description| +|---|---|---|---| +|0|0|0|no clock source (Timer/Counter stopped)| +|0|0|1|clk/1 (no prescaler)| +|0|1|0|clk/8 (from prescaler)| +|0|1|1|clk/64 (from prescaler)| +|1|0|0|clk/256 (from prescaler)| +|1|0|1|clk/1024 (from prescaler)| +|1|1|0|external clock source on T0 pin. clock falling edge| +|1|1|1|external clock source on T0 pin. clock rising edge| + + + +|CS12|CS11|CS10|Description| +|---|---|---|---| +|0|0|0|no clock source (Timer/Counter stopped)| +|0|0|1|clk/1 (no prescaler)| +|0|1|0|clk/8 (from prescaler)| +|0|1|1|clk/64 (from prescaler)| +|1|0|0|clk/256 (from prescaler)| +|1|0|1|clk/1024 (from prescaler)| +|1|1|0|external clock source on T1 pin. clock falling edge| +|1|1|1|external clock source on T1 pin. clock rising edge| + + +|CS22|CS21|CS20|Description| +|---|---|---|---| +|0|0|0|no clock source (Timer/Counter stopped)| +|0|0|1|clkT2S/1 (no prescaler)| +|0|1|0|clkT2S/8 (from prescaler)| +|0|1|1|clkT2S/64 (from prescaler)| + +## Compare Match Register计算方法 + +arduino有三个时钟计数器:Timer0、Timer1、Timer2。 + +arduino的时钟频率是16MHz,所以每个嘀嗒(tick)代表1/16000000秒(约为63ns)。而arduino的Timer0、Timer2的时钟计数器是8位、Timer1是16位。因此这就意味着就算把值设置成最大的,对于8位的将以256/1600000(约16us),对于16位将以65536/16000000(约4ms)的频率触发。因此如果想让它频率变得更低一点,比如一秒触发一次就有点不现实。 + +除非可以利用预分频器(prescaler)来控制时钟计数器的增加方式: + +`(时钟计数频率(Hz)) = 16MHz / prescaler` + +所以当prescaler=1,时钟计数频率=16MHz;当prescaler=64,时钟计数频率=250KHz。 + +如上表所述,prescaler只能在1, 8, 64, 256, 1024中取值。 + +所以: + +`(计数器触发频率(Hz)) = 16MHz / ( prescaler*(CompareMatchRegister+1) )` + +变换一下上式: + +`CompareMatchRegister = 16MHz / ( prescaler*(计数器触发频率(Hz)) ) - 1` + +**注意:Timer0、Timer1的CompareMatchRegister必需小于256;Timer1的CompareMatchRegister必需小于65536** + +所以如果想要1Hz的触发频率,则`CompareMatchRegister = 16MHz / ( 1024*1) - 1 = 15624`,这里的prescaler=1024,因为prescaler取到最大值了CompareMatchRegister还等于15624,256<15624<65536,所以必需要用到Timer1。 + + +## 示例代码 + +``` +void setup(){ + + cli();//stop interrupts + + //设置timer0会影响到loop函数里调用的delay,会使其失效 + //set timer0 interrupt at 2kHz + TCCR0A = 0;// set entire TCCR0A register to 0 + TCCR0B = 0;// same for TCCR0B + TCNT0 = 0;//initialize counter value to 0 + // set compare match register for 2khz increments + OCR0A = 124;// = (16*10^6) / (2000*64) - 1 (must be <256) + // turn on CTC mode + TCCR0A |= (1 << WGM01); + // Set CS01 and CS00 bits for 64 prescaler (参考上表) + TCCR0B |= (1 << CS01) | (1 << CS00); + // enable timer compare interrupt + TIMSK0 |= (1 << OCIE0A); + + //set timer1 interrupt at 1Hz + TCCR1A = 0;// set entire TCCR1A register to 0 + TCCR1B = 0;// same for TCCR1B + TCNT1 = 0;//initialize counter value to 0 + // set compare match register for 1hz increments + OCR1A = 15624;// = (16*10^6) / (1*1024) - 1 (must be <65536) + // turn on CTC mode + TCCR1B |= (1 << WGM12); + // Set CS10 and CS12 bits for 1024 prescaler (参考上表) + TCCR1B |= (1 << CS12) | (1 << CS10); + // enable timer compare interrupt + TIMSK1 |= (1 << OCIE1A); + + //set timer2 interrupt at 8kHz + TCCR2A = 0;// set entire TCCR2A register to 0 + TCCR2B = 0;// same for TCCR2B + TCNT2 = 0;//initialize counter value to 0 + // set compare match register for 8khz increments + OCR2A = 249;// = (16*10^6) / (8000*8) - 1 (must be <256) + // turn on CTC mode + TCCR2A |= (1 << WGM21); + // Set CS21 bit for 8 prescaler (参考上表) + TCCR2B |= (1 << CS21); + // enable timer compare interrupt + TIMSK2 |= (1 << OCIE2A); + + sei();//allow interrupts + +}//end setup + +void loop() { } + +ISR(TIMER0_COMPA_vect){ /* TODO */ } +ISR(TIMER1_COMPA_vect){ /* TODO */ } +ISR(TIMER2_COMPA_vect){ /* TODO */ } +``` + + + +## 注 +1. 1MHz = 1 * 1000KHz = 1 * 1000 * 1000Hz,这里是1000不是1024 \ No newline at end of file diff --git "a/documents/\351\201\245\346\216\247\347\272\242\345\244\226\347\272\277\347\274\226\347\240\201.md" "b/documents/\351\201\245\346\216\247\347\272\242\345\244\226\347\272\277\347\274\226\347\240\201.md" new file mode 100644 index 0000000..54d8db4 --- /dev/null +++ "b/documents/\351\201\245\346\216\247\347\272\242\345\244\226\347\272\277\347\274\226\347\240\201.md" @@ -0,0 +1,45 @@ + +## 1. 电信机顶盒遥控编码 +||格式|编码| +|---|---|---| +|电源|NEC|`CD328F70`| +|待机|NEC|`CD323BC4`| +|频道+|NEC|`CD32A15E`| +|频道-|NEC|`CD32619E`| +|音量+|NEC|`CD3201FE`| +|音量-|NEC|`CD32817E`| +|返回|NEC|`CD32A35C`| +|确定|NEC|`CD32738C`| +|上|NEC|`CD3253AC`| +|下|NEC|`CD324BB4`| +|左|NEC|`CD329966`| +|右|NEC|`CD32837C`| +|上页|NEC|`CD32BB44`| +|下页|NEC|`CD3231CE`| +|0|NEC|`CD32E11E`| +|1|NEC|`CD3249B6`| +|2|NEC|`CD32C936`| +|3|NEC|`CD3233CC`| +|4|NEC|`CD32718E`| +|5|NEC|`CD32F10E`| +|6|NEC|`CD3213EC`| +|7|NEC|`CD3251AE`| +|8|NEC|`CD32D12E`| +|9|NEC|`CD3223DC`| + + +## 2. 小米电视遥控编码 + +||格式|编码|RawData| +|---|---|---|---| +|电源|UNKNOWN|`5E7DB3DC`|`{1100,500, 650,500, 650,1400, 650,1350, 650,500, 650,1400, 650,500, 650,1350, 650,550, 650,1350, 650,1350, 650}`| +|上|UNKNOWN|`3F9089B2`|`{1100,500, 600,1150, 650,500, 600,850, 650,1050, 650,550, 650,500, 650,800, 650,800, 650,1050, 650,1400, 650}`| +|下|UNKNOWN|`B23FB1E9`|`{1050,550, 600,1150, 600,550, 600,850, 650,1050, 650,550, 600,550, 600,850, 650,1050, 650,1100, 650,500, 650}`| +|左|UNKNOWN|`8753BA5C`|`{1000,600, 600,1150, 550,600, 550,900, 550,1200, 550,600, 550,600, 550,1200, 550,1450, 550,900, 550,900, 550}`| +|右|UNKNOWN|`69893291`|`{1000,600, 550,1200, 550,600, 550,900, 550,1150, 600,600, 550,600, 550,1450, 550,600, 600,600, 550,1150, 550}`| +|确定|UNKNOWN|`76A77416`|`{1000,600, 550,1200, 550,600, 550,900, 550,1150, 600,600, 550,600, 550,1450, 550,900, 550,600, 550,1500, 550}`| +|HOME|UNKNOWN|`F874E0F8`|`{1000,600, 550,1200, 550,600, 550,900, 550,1150, 600,600, 550,600, 550,1150, 600,600, 550,900, 550,1150, 550}`| +|返回|UNKNOWN|`DE3AA631`|`{950,650, 500,1200, 550,650, 550,850, 550,1250, 500,650, 450,650, 550,900, 550,1500, 500,1250, 500,900, 550}`| +|MENU|UNKNOWN|`F574DC41`|`{1000,600, 550,1200, 550,600, 550,900, 550,1200, 550,600, 550,600, 550,900, 550,600, 550,1200, 550,1150, 600}`| +|音量+|UNKNOWN|`8753BA5C`|`{1000,600, 550,1150, 600,600, 550,900, 550,1150, 600,550, 600,600, 550,1450, 550,1200, 550,600, 550,600, 550}`| +|音量-|UNKNOWN|`8453B5A5`|`{1050,550, 650,1050, 650,500, 650,800, 650,1100, 650,500, 650,500, 650,1400, 650,1350, 650,500, 650,800, 650}`| diff --git a/tools/AceBox/AceBox.xcodeproj/project.pbxproj b/tools/AceBox/AceBox.xcodeproj/project.pbxproj index 617ae79..c4d9a97 100644 --- a/tools/AceBox/AceBox.xcodeproj/project.pbxproj +++ b/tools/AceBox/AceBox.xcodeproj/project.pbxproj @@ -128,6 +128,12 @@ 50A4F2741AF2154100DB7E36 = { CreatedOnToolsVersion = 6.3.1; DevelopmentTeam = VR7L9Q5L2E; + ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.BackgroundModes = { + enabled = 1; + }; + }; }; }; }; @@ -285,12 +291,15 @@ isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = VR7L9Q5L2E; INFOPLIST_FILE = AceBox/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.2; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.tencent.voip.ace; PRODUCT_NAME = Ace; + PROVISIONING_PROFILE_SPECIFIER = ""; }; name = Debug; }; @@ -298,12 +307,15 @@ isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = VR7L9Q5L2E; INFOPLIST_FILE = AceBox/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.2; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.tencent.voip.ace; PRODUCT_NAME = Ace; + PROVISIONING_PROFILE_SPECIFIER = ""; }; name = Release; }; diff --git a/tools/AceBox/AceBox.xcodeproj/project.xcworkspace/xcuserdata/Ace.xcuserdatad/UserInterfaceState.xcuserstate b/tools/AceBox/AceBox.xcodeproj/project.xcworkspace/xcuserdata/Ace.xcuserdatad/UserInterfaceState.xcuserstate index edc0110c060f8efbf370b3abd9159bf40d9d7d34..b20ba3ce735579d526b617186c3cd8eef8ea94ee 100644 GIT binary patch literal 114416 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 literal 93552 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 b&@}h|a~MZ7`2Y5KSO5P` Bool { + private func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // Override point for customization after application launch. return true } - func applicationWillResignActive(application: UIApplication) { + func applicationWillResignActive(_ application: UIApplication) { // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. } - func applicationDidEnterBackground(application: UIApplication) { + func applicationDidEnterBackground(_ application: UIApplication) { // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. } - func applicationWillEnterForeground(application: UIApplication) { + func applicationWillEnterForeground(_ application: UIApplication) { // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. } - func applicationDidBecomeActive(application: UIApplication) { + func applicationDidBecomeActive(_ application: UIApplication) { // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. } - func applicationWillTerminate(application: UIApplication) { + func applicationWillTerminate(_ application: UIApplication) { // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. } diff --git a/tools/AceBox/AceBox/Base.lproj/LaunchScreen.xib b/tools/AceBox/AceBox/Base.lproj/LaunchScreen.xib index 816612e..6e80504 100644 --- a/tools/AceBox/AceBox/Base.lproj/LaunchScreen.xib +++ b/tools/AceBox/AceBox/Base.lproj/LaunchScreen.xib @@ -1,10 +1,19 @@ - - + + + + + - + + + + + HelveticaNeue + + @@ -15,24 +24,24 @@ - - + + - + diff --git a/tools/AceBox/AceBox/Base.lproj/Main.storyboard b/tools/AceBox/AceBox/Base.lproj/Main.storyboard index cc32045..d68453c 100644 --- a/tools/AceBox/AceBox/Base.lproj/Main.storyboard +++ b/tools/AceBox/AceBox/Base.lproj/Main.storyboard @@ -5,7 +5,7 @@ - + diff --git a/tools/AceBox/AceBox/Info.plist b/tools/AceBox/AceBox/Info.plist index 222ac74..6a070d0 100644 --- a/tools/AceBox/AceBox/Info.plist +++ b/tools/AceBox/AceBox/Info.plist @@ -20,8 +20,20 @@ ???? CFBundleVersion 1 + LSApplicationCategoryType + + en + LSRequiresIPhoneOS + NSLocationAlwaysAndWhenInUseUsageDescription + 需要始终访问你的地理位置 + NSLocationWhenInUseUsageDescription + 需要在使用应用时访问你的地理位置 + UIBackgroundModes + + location + UILaunchStoryboardName LaunchScreen UIMainStoryboardFile diff --git a/tools/AceBox/AceBox/SecondViewController.swift b/tools/AceBox/AceBox/SecondViewController.swift index b403572..3e2c11b 100644 --- a/tools/AceBox/AceBox/SecondViewController.swift +++ b/tools/AceBox/AceBox/SecondViewController.swift @@ -7,20 +7,94 @@ // import UIKit +import CoreLocation -class SecondViewController: UIViewController { +class SecondViewController: UIViewController, CLLocationManagerDelegate { + + var locationMgr:CLLocationManager! + var cnt:Int = 0 + var labelGPS:UILabel! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. //view.backgroundColor = UIColor.blueColor() view.backgroundColor = UIColor(red: 0, green: 0.47843137250000001, blue: 1, alpha: 1) + + locationMgr = CLLocationManager() + locationMgr.desiredAccuracy = kCLLocationAccuracyBestForNavigation + if #available(iOS 9.0, *) { + locationMgr.allowsBackgroundLocationUpdates = true + } + locationMgr.pausesLocationUpdatesAutomatically = false + + //locationMgr.distanceFilter = 50 + + locationMgr.requestAlwaysAuthorization() + + locationMgr.delegate = self + + if CLLocationManager.locationServicesEnabled() { + locationMgr.startUpdatingLocation() + } else { + print("no location service") + } + + labelGPS = UILabel(frame: CGRect(x: 10, y: 20, width: 300, height: 100)) + labelGPS.text = "searching" + labelGPS.textColor = UIColor.white + labelGPS.numberOfLines = 3 + self.view.addSubview(labelGPS) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } + + + func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) { + print(error) + } + + func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { + if locations.count > 0 { + let locationInfo = locations.last! + + let msg = "次数:\(cnt)\n经度:\(locationInfo.coordinate.longitude)\n纬度:\(locationInfo.coordinate.latitude)" + + cnt += 1 + + //let alert:UIAlertView = UIAlertView(title:"Get Location", message:msg, delegate:nil, cancelButtonTitle:"Yes") + //alert.show() + + print(msg) + + labelGPS.text = msg + /* + let fileManager = FileManager.default + let filePath:String = NSHomeDirectory() + "/Documents/gps.data" + let exist = fileManager.fileExists(atPath: filePath) + if exist { + print("exist \(filePath)") + let data = "\(cnt) \(locationInfo.coordinate.longitude) \(locationInfo.coordinate.latitude)\n" + //try! data.write(toFile: filePath, atomically: true, encoding: String.Encoding.utf8) + + let writeHandler = try? FileHandle(forWritingAtPath: filePath) + writeHandler!?.seekToEndOfFile() + writeHandler!?.write(data.data(using: String.Encoding.utf8, allowLossyConversion: true)!) + + let rd = fileManager.contents(atPath: filePath) + print("content: \(String(data:rd!, encoding: String.Encoding.utf8))") + } else { + print(NSHomeDirectory()) + try! fileManager.createDirectory(atPath: NSHomeDirectory()+"/Documents/", + withIntermediateDirectories: true, attributes: nil) + let createSuccess = fileManager.createFile(atPath: filePath, contents: nil, attributes: nil) + print("create file \(filePath) return \(createSuccess)") + }*/ + } + } } -- 2.47.0