tag 标签: ring

相关博文
  • 热度 10
    2023-9-5 16:53
    1491 次阅读|
    0 个评论
    相同RO代码在不同次编译情况下实现的结果差异
    同样的RO代码在不同次编译的情况得到不同的编译结果,看图显示: 1. 大部分情况获得48个组合环节点 2. 偶尔情况下,获得72个环节点如下图所示,这种情况下比上述多占用一个节点,具体原因待查。
  • 热度 21
    2015-6-1 19:48
    1935 次阅读|
    0 个评论
    Ever since I’ve known Max, I have figured that there is no keeping up with him or even beating him -- that is until now when he challenged me to a design-off contest  over who could build the best pixel ring clock . So I thought to give it a whirl.   This is a work in progress. Comments are welcome.   Hardware I thought my clock’s display should be quite active when running, understand what I say to it, have capacitive-sense touch buttons that also would know when it was touched anywhere, and have a speech and audio playback synthesizer to complete the communication-to-human part of the beast. Lastly and obviously, no clock would be complete without a time-keeping mechanism, so a clock/calendar is included.   I ended up with the following for hardware and will give my reasoning: Arduino Leonardo . The UNO and Mega have a USB to TTL chip that connects to the hardware serial port, which ties up the hardware serial port that I want to use to talk to the voice recognition system. The alternative is using the software serial interface, which might work if changed to be interrupt driven – however, my clock is going to be too busy to have to take on this overhead. Available from SparkFun , the Leonardo has the USB built into the processor, which frees up the hardware serial port. It also makes the ‘bridge’ function to connect the PC to the voice system simple and easier to share with the debug-serial I/O console built into the compiler environment, not to mention that it also runs 115k baud with minimal overhead.   ChronoDot clock/calendar , available from Adafruit , was almost a no-brainer. It interfaces to the I2C wire bus, is very low power, and keeps outstandingly accurate time. Also it comes with the obvious other things required, such as the button-cell battery, for example.   EasyVR shield V3 , from Veear and available from Sparkfun . This little beauty is both a speech recognition engine and a sound player in one. Having extensive support and library, this board-shield offloads the Arduino from what would otherwise be an impossible task for the 16 MHz memory-limited processor. The hardware can be run in standalone PC mode, as well as ride on the Arduino, to make it easier to develop an operating environment. Its separate commander software that runs on the PC makes the job of teaching the device words (speaker dependent) and then downloading them a breeze. For Arduino code development, there are very good examples to use. Lastly, for speaker-independent additional-word supplements, a software tool can be purchased.   Groove Q-touch sensor , from EpicTinker , has the following features: Shares the I2C bus nicely, has 7 separate very noise-tolerant capacitive inputs, self calibrates, and is very small itself. For debug, three of the buttons can optionally be used already configured on the board’s underside.   The concentric, three pixel rings , which are 60 pixels for the outside-most ring, 24-pixel ring for the middle, and a 12-ring for the inside-most ring, make a tasty clock. This makes the minutes and seconds share the outside ring, the 24-ring for hours when in the 24-hour mode, and lastly the 12-ring to display the hours in 12-hour mode. Having the extra unused ring depending on the mode, allows it to be used for AM/PM indication, and status display of other clock functions such as voice, for example.   Power supply . An external power supply is required, since all-white/all-on and fully-bright pixels draw considerable amps. I chose the Recom Power RAC60-05S/OF  from Digi-key . It has room to grow at 10 amps, is relatively small, and is only about $21. One down-side note to mention however, is that whenever the supply draws more than a few amps, it ‘sings’ a bit, which could get a tad annoying if it turns out to be loud enough after mounting it inside the clock.   To get started: I hooked everything up as mentioned, and used digital pins 4, 7, and 8 for the 60-ring, 24-ring, and 12-ring respectively. I left the pullup resistors for the I2C bus installed on the Q-touch, because I changed the I2C library away from using the standard WIRE library, and the replacement didn’t enable the internal pullups. I will discuss this library replacement later.   Software At first it seemed logical to try to use everything stock and standard, as supplied by the manufacturers of each of the respective pieces, to save time and keep it simple, clean, and understandable. However, it quickly became apparent that to have a dynamic real-time display, something like an interrupt-driven task manager would make things work better. The manager would not need to be a full up pre-emptive multitasker operating system, but could be a single-level interrupting scheduler. Hunting around for exactly that on the web, I landed on something that was an outstanding multitasker  but wasn’t interrupt driven. To overcome this problem, I thought to give it a try as a quick poll in loop(), then add the interrupts as necessary. To its credit, this library is very full featured, having things like run once, run every time on a time, run a certain number of times, oscillate, pulse, stop, update, and find free event index. I found the   t.every( xMilliseconds, routineName, number-of-times)   quite useful, where it calls the routinenamed  every x milliseconds  for number-of-times and then stops.   All tasks are sampled to see if the timers are to be triggered for calls, each time the t.update() is run. As nice as this was to use, it had the down-side that PWM, millis() and other internal timer delays, as well as other timer library functions were not useable. So rather than expend energy to add interrupts, I thought to look for another solution that was already interrupt-driven, which led me to LeOS (little embedded Operating System) . While this was not as full featured, and lacked the run number-of-times item I wanted, it did have everything else, including interrupts, task restart, task change, etc. Much later on I would also discover, to my chagrin, that this scheduler was not compatible with the NeoPixel and WIRE I2C libraries, causing me to hunt/replace these with something that would work. To these ends I first found the Neopixel replacement, light_WS2812  which worked well enough, even though it was a very basic engine. Next I found the replacement for the I2C  which allowed to disable interrupts, set speed, and other nice things, but which mainly was compatible with LeOS. I did notice that this library didn’t enable the internal pullups, so I went to make sure there were external ones provided on at least one of the boards connected to the bus, rather than spend the time to find the software fix. After substituting appropriately this softI2C master to the function calls to the ChronoDot, I thought to tackle the touch controller, which I had working originally using the Wire library, prior to integrating LeOS. This was not to be.   At this point, I had a beautifully spinning and whirring display, eloquently running, voice recognition accepting a trigger-speech command, and responding with speaking the current time. However, I couldn’t get the I2C library swapped out for the WIRE library on the calls to the touch controller. It seems that the trouble lies in the compiler’s insistence that the I2C be declared in proper scope inside the touch controller’s library, where the I2C is itself a library. All the techniques I usually use to resolve such issues, such as pulling the code out of the library up to the top-level sketch, for example, have failed.   Some of you who read this, may have discovered a few OTHER quirks with the otherwise nice compiler. As an example that I ran across on this project, I had a function called serialIN(), which worked just fine as the code steadily grew, but then suddenly the compiler began complaining that serialIN was not defined in this scope. I worked for hours trying to fix this, until I accidentally renamed it to iserialIN(), which made the compiler happy! Now mind you, the serialIN was not a keyword (Serial.xxx with the capitol ‘S’ is a keyword, as it would indicate this by a change of text color). There were no constructors, classes or anything else that I could find, having been added, to cause the error. Not having much more patience to bear, I left it like this and decided to move on.   To solve this last seemingly insurmountable problem (to me) with the I2C library replacement for the touch controller, I welcome any ‘C’ guru to take a look at this and offer a suggestion/fix. I will supply the appropriate code snippets for all who brave forward.   iframe width="400" height="360" src="https://www.youtube.com/embed/Ov1ZI26uTFI?feature=player_embedded" frameborder="0" allowfullscreen/iframe   By the way, I have included a video of what I have so far, for you who are interested to drool over, or cry, as appropriate.   Thanks in advance!   Ivan Cowie
  • 热度 12
    2010-4-8 10:15
    1236 次阅读|
    0 个评论
    Tomorrow will the last day, the year finally comes to an end. I’m just back from a nearby supermarket which cramped with piles of “Nianhuo” and earsplitting festive music. Today, hundreds of eager consumers jostle each other on the streets, I knew how sardines feel then. There are more to buy tomorrow morning and I’m prepared to push and be pushed. Looking up to the then to the throngs of people in front of wow gold , I smiled to myself uncontrollably, believing the city must be crazy, it’s in a state of ecstasy.   If I live alone, for sure, I won’t buy anything more than usual. Better to eat fresh things, but it’s the thing what chinese people prefer to do: to conserve for, especially during the spring festival. I did all the shopping on behalf of my father, on the other hand, it does add festive atmosphere to the festival. Anyway, cheap wow gold is a time when our whole country throw itself into shopping and eating, from sun up to sun down.   The new year’s eve has lost it’s charm to for many years. I’m wondering if tomorrow night can be a bit different from the past years, maybe to play with with friends or family members outside. Back to my early tens or even younger, fireworks and crackers were really attractive to me, not only watching others buy wow gold playing them shouting and bouncing, but I would also participate in the.   There once were one of mini fireworks nicknamed “ground roller”,rolled quickly on the ground and sparkled colorful light beams upon ignited. However, it is a pity that “ground rollers” disappeared without my, probably ten years ago or even earlier. Another relatively safer crackers, shaped like tiffany , was played in this way: get one from a box, drop it on the floor at full tilt, then the mono crack would be heard. Hope this one hasn’t disappeared, I’ll go and check   early tomorrow morning, wish myself good luck! If it was outed, others will do the trick as well, what I really want to retrieve is the feeling….Now, down in the courtyard in front of my, car alarms were screaming all the time, kids are having a good time, they creates my impulse to join them. Well, I’ll resist the temptation and wait till tomorrow…   Another thing to do tomorrow evening is to watch the New Year Eve's CCTV gala, though goes from bad to worse, it’s a family tradition that I’d like to stick to. If the shows sucks, we can choose to chat with wow buy gold family members till a better one comes up. Why the gala can’t hold a candle to previous years? Maybe it’s only my personal vision, others may sing high praise of   I’d better learn to appreciate performers’ hard work, also, it’s hard for theto direct the whole show perfectly which suits all audiences’ appetite. One thing for sure, they practise their shows time after time and have numerous rehearsals. I heard that the “guitar girl” who sang for a living at Xidan underground passage in Beijing would put in an appearance, bravo! I love her very much, a tough girl with sound of nature, her songs could touch one’s inner heart easily and arouse our conscience to pay attention to purest elements in the world. Looking forward to it!    
相关资源
  • 所需E币: 0
    时间: 2020-12-19 22:21
    大小: 250.99KB
    上传者: samewell
    胡连精密-RINGTONGUETERMINALS016294X0301
  • 所需E币: 0
    时间: 2020-9-21 19:43
    大小: 252.19KB
    上传者: LGWU1995
    胡连精密-RINGTONGUETERMINALS016294X0301
  • 所需E币: 0
    时间: 2020-8-4 16:58
    大小: 5.3KB
    上传者: kaidi2003
    FirstSensorApplicationNoteAPDwithguardring.pdf
  • 所需E币: 4
    时间: 2019-12-24 17:53
    大小: 42.65KB
    上传者: quw431979_163.com
    摘要:这种电路派生纯正弦波从晶体控制时钟源所使用的环形计数器来删除最高振幅有害的谐波,和过滤结果与8阶低通、开关电容椭圆筛选器(MAX7400)。Maxim>AppNotes>FilterCircuits(Analog)SignalGenerationCircuitsKeywords:sinewavegenerators,low-distortionsignalgenerators,crystal-stabilizedoscillators,ringcounters,weighted-resistanceDec21,2010networks,lowpassellipticfilters,switched-capacitorfiltersAPPLICATIONNOTE4547Low-CostCircuitConvertsClocktoLow-DistortionSinewaveAbstract:Thiscircuitderivesapuresinewavefromacrystal-controlledclocksourcebyusingaringcountertoremovethehighest-amplitudeunwantedharmonics,andfilteringtheresultwithan8th-orderlowpass,switched-capacitorellipticfilter(MAX7400).AsimilarversionofthisarticleappearedintheOctober2007issueofPDmagazine.Asimple,low-costcircuit(Figure1)usestheexistingclockinad……
  • 所需E币: 5
    时间: 2019-12-24 16:30
    大小: 3.27KB
    上传者: 978461154_qq
    蜂鸣器发出报警音……