I am trying to create a Monostable of 300mS than is triggered every second. It was easy enough when I worked with a 16 bit counter because a PWM count...
I am trying to create a Monostable of 300mS than is triggered every second. It was easy enough when I worked with a 16 bit counter because a PWM counter (ms_Counter) with a period of 10000 (with a clock of 10KHz) and a Compare setting of 3000 was the perfect solution. Unfortunately I needed greater resolution for the period and since the component can only be configured for 16 bits, I went to a 24bit counter with a clock of 1MHz and a Period of 1000000 (OneSecCounter)which generated 1 Hz. I tried to get it to trigger (using the reload pin) a PWM counter with a period of 65000 and the Compare remained at 3000. I tried to get the TC of the 24 bit counter to reload the PWM counter as you can see in the attached drawing, but the monostable pulse occurred at a far longer period, perhaps the 65000 which would suggest that the reload does not work the way I think. I also tried the period at 4000 and the output was much faster than the desired 1 second.
According to the datasheet "For all devices, except PSoC 4000, PSoC 4100, PSoC 4200, it should only be used when the counter is not running.", so it seems that I can activate the Reload when it is running. I found the following in the data sheet a little confusing "In up and up/down counting modes, the counter is initialized with “0” (for PSoC 4000, PSoC 4100, PSoC 4200 devices).". Does that mean the reload should be active low? I tried both ways but it made no difference .
In the schematic you can see a divide by 2 D-FF to prove that the OneSecCounter is working. I also include the register settings
Does anyone have any idea what I can do generate the monostable pulse? Any help would be much appreciated!
I am upgrading a design from using the Cy8C4246AZI to the Cy8C4248LQI-BL573 or BL583. In my Cy8C4246 design I have an IR receiver module connected to...
I am upgrading a design from using the Cy8C4246AZI to the Cy8C4248LQI-BL573 or BL583. In my Cy8C4246 design I have an IR receiver module connected to the wakeup pin P0.7. Internally this pin is configured as an interrupt (IR_Input) and connected to the capture input of a Timer Counter. The interrupt is derived.
During normal operation, when I receive an interrupt on this pin I start the timer to measure the pulses so that I can decode the IR signal received. I also have a storage mode for this device where I use Hibernate and the IR signal is used to wakeup from Hibernate. I maintained the same external hardware but now I am using the Cy8C4248LQI-BL573 and want to also be able to use the -BL583. I connected the IR input to the wakeup pin P2.2 but I am not able to compile. I receive routing errors and if I delete the connection from the pin to the Timer Counter capture input it will compile without errors.
I can't attach my project as it is because it is code for my customer. I am using PSoC Creator 4.3 with PDL 3.1.1. Both devices are from the PSoC 4 family so why does it work on the 4200M devices and not on the BLE devices?
I do not have BLE active yet. I am just getting the existing project running and will incorporate BLE later. We are upgrading the hardware first because we couldn't buy the Cy8C4246.
I'm using the raw PPS off a locked GPS (not a GPSDO) to gate the 24 MHz and measure the frequency. I've got three brand new CYBLE-012011 on completely different layouts and they all measure exactly +19 ppm hot using the recommended 0xbcbc. I find that 0xd9d9 (20.7 pF, 20.7 pF) gets them right around 0 ppm. Even with jitter a locked GPS PPS should give you significantly less than 1 ppm error.
SInce the KBA is from 4 years ago was there a change in the xtal in the module? I notice that some other modules have a recommended 0xd0d0. In any case, 2 x 20 pF on a xtal seems like a lot to me.
Could someone with a calibrated frequency counter double-check my results?