Hello, Alexander! You wrote to Alexey V Bugrov on Fri, 24 Jun 2005 09:54:33 +0400:
AV>> âÌÏËÉÒÏ×ÏÞÎÙÅ ÅÍËÏÓÔÉ ÄÏÓÔÁÔÏÞÎÏ ×ÙÓÏËÏÞÁÔÏÔÎÙÅ ÓÔÏÑÔ? AL> ëÅÒÁÍÉËÁ, ÐÏ 0.1.
ðÌÏÈÏ. ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÎÁ ÎÏÇÉ ÐÉÔÁÎÉÑ (ÓÏ ×ÓÅÈ ÞÅÔÙÒÅÈ ÓÔÏÒÏÎ) ÎÅ ÂÏÌÅÅ
1000 Ðæ NP0, ÐÏÓÌÅ ÎÉÈ ÕÖÅ ÐÏ 0.1 É ÎÅ ÈÕÖÅ ÞÅÍ X7R. ðÒÏÓÔÏ 0,1 X7R (Á ÅÝÅ, ÎÅ ÄÁÊ ÂÏÇ, Y5U) ÎÁ ÔÁËÉÈ ÞÁÓÔÏÔÁÈ ÐÏÞÔÉ ÎÅ ÒÁÂÏÔÁÀÔ.
AV>> õ ÍÅÎÑ ÎÉËÁËÉÈ ÐÒÅÔÅÎÚÉÊ Ë ÜÔÏÍÕ ÄÅ×ÁÊÓÕ ÎÅÔ. òÁÂÏÔÁÅÔ × ÐÏÌÎÏÍ AV>> ÓÏÏÔ×ÅÔÓÔ×ÉÉ Ó ÄÏËÕÍÅÎÔÁÃÉÅÊ. AL> ÷ ÏÂÝÅÍ Ñ ÐÒÏÂÌÅÍÕ ÒÅÛÉÌ, ÈÏÔÑ É ÞÅÒÅÚ ö. AL> PortA Õ ÍÅÎÑ ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÕÐÒÁ×ÌÅÎÉÑ ÓÔÁÔÉËÏÊ AS7C... ðÒÉ AL> ×ÙÐÏÌÎÅÎÉÉ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÉ ËÏÍÁÎÄ AL> bcf CS_RAM ; CS sram --> 0 AL> bcf READ ; Read --> 0 ×ÔÏÒÁÑ ËÏÍÁÎÄÁ ÎÅ ×ÓÅÇÄÁ AL> ×ÙÐÏÌÎÑÅÔÓÑ × ÄÉÁÐÁÚÏÎÅ 3.0-4V
ìÀÂÏÐÙÔÎÏ. åÓÌÉ ÂÙ ÎÅ ×ÙÐÏÌÎÑÌÁÓØ ÐÅÒ×ÁÑ ËÏÍÁÎÄÁ, ÔÏ ÏÂßÑÓÎÅÎÉÅ ÂÙÌÏ ÂÙ ÄÏÓÔÁÔÏÞÎÏ ÐÒÏÓÔÏÅ - ÐÁÒÁÚÉÔÎÙÅ ÅÍËÏÓÔÉ ÎÁ ÎÏÇÁÈ.
îÕ ÅÝÅ ÏÂÒÁÔÉ ×ÎÉÍÁÎÉÅ ÎÁ ÜÔÏ:
When two successive instructions are used on the same I/O port (except "mov Rx,W" ) with a very high clock rate, the "write" part of one instruction might not occur soon enough before the "read" part of the very next instruction, resulting in getting "old" data for the second instruction. To ensure predictable results, avoid using two succes- sive read-modify-write instructions that access the same port data register if the clock rate is high or, insert 3 NOP instructions between the successive read-modify-write instructions (if SYNC bit in the FUSE register is enabled,
5 NOP instructions are required). For operating frequen- cies of 50 MHz or lower, if bit 7 of the T2CNTB (POR- TRD) is set, the port reads data from the data register instead of port pins. In this case, the NOP instructions are not required.
WBR, AVB