阿莫电子论坛
IV电路分析
不错 看地电路挺精妙的。学些了
2011-02-25,09:29:34
资料 邮件 回复 引用回复 ↑↑ ↓↓
编辑 删除
广告投诉、提议置酷等 提交
【21楼】 dszx 积分:141 派别: 等级:-----来自:新疆石河子市
LZ:0-5V转换0-20mA,0mA能实现吗?MC1458能做的0mA后小数点几位?我用OP2177做过,可实现0.004mA的零位。
编辑 删除
广告投诉、提议置酷等 提交
积分:501 派别: 等级:-----来自:
/bbs/bbs_content.js…
(原文件名:VI变换电路分析vol2_Page_2.jpg) 引用图片
11/21
2011-4-14
0-5V转换-20mA V/I电路分析 中国电…
2011-02-27,15::27
积分:1211
派别:
等级:------
来自:
2011-02-25,09:13:36
资料 邮件 回复 引用回复 ↑↑ ↓↓
【18楼】 USACH 美丽 坚和中国 积分:259 派别: 等级:-----来自:
我这两天也一直在研究这个,唉,谢谢。
__________________________ 美丽坚和中国。
/bbs/bbs_content.js…
(原文件名:VI变换电路分析vol2_Page_7.jpg) 引用图片
18/21
2011-4-14
2011-02-27,15:23:57
0-5V转换-20mA V/I电路分析 中国电…
资料 邮件 回复 引用回复 ↑↑ ↓↓
编辑 删除
╟—虚拟总论坛
跳转至:
↓↓ 0-5V转换-20mA V/I电路分析
兄弟MFC-8460N_8860DN_DCP-8060维修手册
USB-6009用户使用手册
USER GUIDE AND SPECIFICATIONSNI USB-6008/6009Bus-Powered Multifunction DAQ USB DeviceThis user guide describes how to use the National Instruments USB-6008 and National Instruments USB-6009 data acquisition (DAQ) devices and lists specifications.The NI USB-6008/6009 provides connection to eight single-ended analog input (AI) channels, two analog output (AO) channels, 12 digital input/output (DIO) channels, and a 32-bit counter with afull-speed USB interface. Table1 compares the devices.Table 1. NI USB-6008 and NI USB-6009 ComparisonFeature NI USB-6008NI USB-6009AI resolution12 bits differential,11 bits single-ended 14 bits differential, 13 bits single-endedMaximum AI sample rate, single channel*10 kS/s48 kS/s Maximum AI sample rate,multiple channels (aggregate)*10 kS/s48 kS/sDIO configuration Open collector†Each channel individuallyprogrammable as open collectoror active drive†* System-dependent.† This document uses NI-DAQmx naming conventions. Open-drain is called open collector and push-pull is called active drive.Figure1 shows key functional components of the NI USB-6008/6009.Figure 1. NI USB-6008/6009 Block DiagramContentsSafety Guidelines (3)Electromagnetic Compatibility Guidelines (3)Unpacking (4)Setting Up the NI USB-6008/6009 (4)Using the NI USB-6008/6009 in an Application (6)Features (7)USB Connector and USB Cable Strain Relief (7)LED Indicator (8)Screw Terminal Connector Plugs (8)Firmware (8)Cables and Accessories (9)Pinout and Signal Descriptions (9)NI USB-6008/6009 User Guide and © National Instruments Corporation 3NI USB-6008/6009 User Guide and SpecificationsAnalog Input (11)Analog Input Modes and Signal Sources (11)Floating Signal Sources.......................................................................................................12Ground-Referenced Signal Sources.....................................................................................13Taking Differential Measurements......................................................................................14Taking Referenced Single-Ended Measurements................................................................15Digital Trigger.............................................................................................................................15Analog Output.. (16)Connecting Analog Output Loads...............................................................................................16Minimizing Glitches on the Output Signal..................................................................................16Digital I/O.. (17)Source/Sink Information..............................................................................................................18I/O Protection...............................................................................................................................19Power-On States..........................................................................................................................19Static DIO....................................................................................................................................19PFI 0.. (19)Using PFI 0 as a Digital Trigger..................................................................................................19Using PFI 0 as an Event Counter.................................................................................................19External Reference and Power Source. (20)+2.5V External Reference...........................................................................................................20+5 V Power Source......................................................................................................................20Specifications.......................................................................................................................................20Where to Go from Here.. (27)Example Programs.......................................................................................................................27Related Documentation................................................................................................................27Where to Go for Support (30)Safety GuidelinesOperate the NI USB-6008/6009 device only as described in this user guide.CautionDo not operate the NI USB-6008/6009 in a manner not specified in this document. Misuseof the device can result in a hazard. You can compromise the safety protection built into the device if the device is damaged in any way. If the device is damaged, contact National Instruments for repair.CautionDo not substitute parts or modify the device except as described in this document. Use thedevice only with the chassis, modules, accessories, and cables specified in the installation instructions. You must have all covers and filler panels installed during operation of the device.CautionDo not operate the device in an explosive atmosphere or where there may be flammablegases or fumes. If you must operate the device in such an environment, it must be in a suitably rated enclosure.Electromagnetic Compatibility GuidelinesThis product was tested and complies with the regulatory requirements and limits for electromagnetic compatibility (EMC) as stated in the product specifications. These requirements and limits are designed to provide reasonable protection against harmful interference when the product is operated in its intended operational electromagnetic environment.This product is intended for use in industrial locations. There is no guarantee that harmful interference will not occur in a particular installation, when the product is connected to a test object, or if the productis used in residential areas. To minimize the potential for the product to cause interference to radio andNI USB-6008/6009 User Guide and Specifications television reception or to experience unacceptable performance degradation, install and use this product in strict accordance with the instructions in the product documentation.Furthermore, any changes or modifications to the product not expressly approved by National Instruments could void your authority to operate it under your local regulatory rules.Caution To ensure the specified EMC performance, operate this product only with shielded cablesand accessories.Caution This product may become more sensitive to electromagnetic disturbances in the operationalenvironment when test leads are attached or when connected to a test object.Caution Emissions that exceed the regulatory requirements may occur when this product isconnected to a test object.CautionChanges or modifications not expressly approved by National Instruments could void theuser’s authority to operate the hardware under the local regulatory rules.UnpackingThe NI USB-6008/6009 device ships in an antistatic package to prevent electrostatic discharge (ESD). ESD can damage several components on the device.CautionNever touch the exposed pins of connectors.To avoid ESD damage in handling the device, take the following precautions:•Ground yourself with a grounding strap or by touching a grounded object.•Touch the antistatic package to a metal part of your computer chassis before removing the device from the package.Remove the device from the package and inspect it for loose components or any other signs of damage. Notify NI if the device appears damaged in any way. Do not install a damaged device in your computer or chassis.Store the device in the antistatic package when the device is not in use.Setting Up the NI USB-6008/6009Complete the following steps to get started with the NI USB-6008/6009.NoteFor information about non-Windows operating system support, refer to the Getting Started with NI-DAQmx Base for Linux and Mac OS X Users document available from /manual s .1.Install the application software (if applicable), as described in the installation instructions that accompany your software.2.Install NI-DAQmx 1.NoteThe NI-DAQmx software is included on the disk shipped with your kit and is available for download at /s upport . The documentation for NI-DAQmx is available after installation from Start»All Programs»National Instruments»NI-DAQ . Other NI documentation is available from /manual s .1NI USB-6008/6009 devices are supported by NI-DAQmx 7.5 and later.© National Instruments Corporation 5NI USB-6008/6009 User Guide and Specifications3.Install the 16-position screw terminal connector plugs by inserting them into the connector jacks as shown in Figure 2.Figure 2. Signal Label Application Diagram4.Affix the provided signal labels to the screw terminal connector plugs. You can choose labels with pin numbers, signal names, or blank labels, as shown in Figure 3. Choose one of the labels, align the correct label with the terminals printed on the top panel of your device and apply the label, as shown in Figure 2.Figure 3. NI USB-6008/6009 Signal LabelsNoteAfter you label the screw terminal connector plugs, you must only insert them into the matching connector jack, as indicated by the overlay label on the device.5.Plug one end of the USB cable into the NI USB-6008/6009 and the other end into an available USB port on the computer.1Overl a y L ab el with Pin Orient a tion G u ide s 2S crew Termin a l Connector Pl u g3S ign a l L ab el 4U S B C ab le1U s er-Defined C us tom L ab el 2Termin a l N u m b er L ab el 3Digit a l I/O L ab el4An a log Inp u t Differenti a l S ign a l N a me L ab el 5An a log Inp u t S ingle-Ended S ign a l N a me L abelNI USB-6008/6009 User Guide and Specifications 6.Double-click the Measurement & Automation icon, shown at left, on the desktop to open Measurement & Automation Explorer (MAX).7.Expand My System»Devices and Interfaces and verify that the NI USB-6008/6009 is listed. If your device does not appear, press <F5> to refresh the view in MAX. If your device is still not recognized, refer to /s upport/daqmx for troubleshooting information.8.Self-test your device in MAX by right-clicking NI USB-600x and selecting Self-Test . Self-test performs a brief test to determine successful device installation. When the self-test finishes, a message indicates successful verification or if an error occurred. If an error occurs, refer to /s upport/daqmx .CautionTo ensure the specified EMC performance, operate this product only with shielded cablesand accessories.9.Connect the wires (16 to 28 AWG) of a shielded, multiconductor cable to the screw terminals by stripping 6.35 mm (0.25 in.) of insulation, inserting the wires into the screw terminals, and securely tightening the screws with the flathead screwdriver to a torque of 0.22–0.25 N · m (2.0–2.2lb · in.). Refer to Figure 6 for the NI USB-6008/6009 pinout.If using a shielded cable, connect the cable shield to a nearby GND terminal.NoteFor information about sensors, go to /s en s or s . For information about IEEE 1451.4 TEDS smart sensors, go to /ted s .10.Run a Test Panel in MAX by right-clicking NI USB-600x and selecting Test Panels .Click Start to test the device functions, or Help for operating instructions. Click Close to exit the test panel.Using the NI USB-6008/6009 in an ApplicationYou can use the DAQ Assistant through many NI application software programs to configure virtual and measurement channels. Table 2 lists DAQ Assistant tutorial locations for NI applications.Refer to the Where to Go from Here section for information about programming examples for NI-DAQmx and NI-DAQmx Base.Table 2. DAQ Assistant Tutorial LocationsNI Application Tutorial LocationLabVIEWGo toHelp»LabVIEW Help . Next, go to Getting Started with LabVIEW»Getting Started with DAQ»Taking an NI-DAQmx Measurement in LabVIEW .LabWindows ™/CVI ™Go to Help»Contents . Next, go to Using LabWindows/CVI»Data Acquisition»Taking an NI-DAQmx Measurement in LabWindows/CVI .Measurement StudioGo to NI Measurement Studio Help»Getting Started with the MeasurementStudio Class Libraries»Measurement Studio Walkthroughs»Walkthrough: Creating a Measurement Studio NI-DAQmx Application .LabVIEW SignalExpressGo to Help»Taking an NI-DAQmx Measurement in SignalExpress .© National Instruments Corporation 7NI USB-6008/6009 User Guide and SpecificationsFeaturesThe NI USB-6008/6009 features a USB connector, USB cable strain relief, two screw terminal connector plugs for I/O, and an LED indicator, as shown in Figure 4.Figure 4. NI USB-6008/6009 Top and Back ViewsUSB Connector and USB Cable Strain ReliefThe NI USB-6008/6009 features a USB connector for full-speed USB interface. You can provide strain relief for the USB cable by threading a zip tie through the USB cable strain relief ring and tightening around a looped USB cable, as shown in Figure 5.Figure 5. NI USB-6008/6009 Strain Relief1U S B C ab le S tr a in Relief2S crew Termin a l Connector Pl u g3LED Indic a tor 4U S B ConnectorLED IndicatorThe NI USB-6008/6009 device has a green LED indicator that indicates device status, as listed inTable3. When the device is connected to a USB port, the LED blinks steadily to indicate that the device is initialized and is receiving power from the connection.Table 3. LED State/Device StatusLED State Device StatusNot lit Device not connected or in suspendOn, not blinking Device connected but not initialized, or the computer is in standby mode.In order for the device to be recognized, the device must be connected to a computer thathas NI-DAQmx installed on it.Single-blink Operating normallyScrew Terminal Connector PlugsThe NI USB-6008/6009 ships with one detachable screw terminal connector plug for analog signals and one detachable screw terminal connector plug for digital signals. These screw terminal connectorsprovide 16 connections that use 16–28AWG wire. Refer to step4 of the Setting Up theNI USB-6008/6009 section for information about selecting labels for the screw terminal connectorplugs. Refer to the Pinout and Signal Descriptions section for the device pinout and signal descriptions.You can order additional connectors and labels for your device. Refer to the Cables and Accessoriessection for ordering information.FirmwareThe firmware on the NI USB-6008/6009 refreshes whenever the device is connected to a computer with NI-DAQmx. NI-DAQmx automatically uploads the compatible firmware version to the device. Thefirmware version may be upgraded when new versions of NI-DAQmx release.NI USB-6008/6009 User Guide and © National Instruments Corporation 9NI USB-6008/6009 User Guide and SpecificationsCables and AccessoriesTable 4 contains information about cables and accessories available for the NI USB-6008/6009. For a complete list of accessories and ordering information, refer to the pricing section of the NI USB-6008 or NI USB-6009 product page at .Pinout and Signal DescriptionsFigure 6 shows the pinout of the NI USB-6008/6009. Analog input signal names are listed assingle-ended analog input name, AI x , and then differential analog input name, (AI x +/–). Refer to Table 5 for a detailed description of each signal.Figure 6. NI USB-6008/6009 PinoutTable 4. NI USB-6008/6009 Cables and AccessoriesAccessoryPart Number DescriptionUSB-6008/6009 Accessory Kit 779371-01Four additional screw-terminal connectors, connector labels, and a screwdriverUSB-6000 Series Prototyping Accessory779511-01Unshielded breadboarding accessory forcustom-defined signal conditioning and prototyping. You can use up to two accessories per device.Hi-Speed USB Cable184125-01184125-021 m and2 m lengthsCaution : For compliance with Electromagnetic Compatibility (EMC) requirements, this product must be operated with shielded cables and accessories. If unshielded cables or accessories are used, the EMC specifications are no longerguaranteed unless all unshielded cables and/or accessories are installed in a shielded enclosure with properly designed and shielded input/output ports.Table 5. Signal DescriptionsSignal Name Reference Direction DescriptionGND——Ground—The reference point for the single-ended analog inputmeasurements, analog output voltages, digital signals, +5VDC supply,and +2.5VDC at the I/O connector, and the bias current return point fordifferential mode measurements.AI <0..7>Varies Input Analog Input Channels 0 to 7—For single-ended measurements, eachsignal is an analog input voltage channel. For differential measurements,AI0and AI4 are the positive and negative inputs of differential analoginput channel 0. The following signal pairs also form differential inputchannels: AI<1, 5>, AI<2, 6>, and AI<3, 7>. Refer to the Analog Inputsection for more information.AO <0, 1>GND Output Analog Output Channels 0 and 1—Supplies the voltage output ofAO channel0 or AO channel 1. Refer to the Analog Output section formore information.P0.<0..7>GND Input or Output Port0 Digital I/O Channels0to7—You can individually configureeach signal as an input or output. Refer to the Digital I/O section formore information.P1.<0..3>GND Input or Output Port1 Digital I/O Channels0to3—You can individually configureeach signal as an input or output. Refer to the Digital I/O section for moreinformation.PFI 0GND Input PFI 0—This pin is configurable as either a digital trigger or an eventcounter input. Refer to the PFI0 section for more information.+2.5 V GND Output+2.5 V External Reference—Provides a reference for wrap-backtesting. Refer to the +2.5V External Reference section for moreinformation.+5 V GND Output+5 V Power Source—Provides +5V power up to 200mA. Refer to the+5 V Power Source section for more information.NI USB-6008/6009 User Guide and Analog InputThe NI USB-6008/6009 has eight analog input channels that you can use for four differential analoginput measurements or eight single-ended analog input measurements.Figure7 shows the analog input circuitry of the NI USB-6008/6009.Figure 7. NI USB-6008/6009 Analog Input CircuitryThe main blocks featured in the NI USB-6008/6009 analog input circuitry are as follows:•MUX—The NI USB-6008/6009 has one analog-to-digital converter (ADC). The multiplexer (MUX) routes one AI channel at a time to the PGA.•PGA—The progammable-gain amplifier provides input gains of 1, 2, 4, 5, 8, 10, 16, or 20 when configured for differential measurements and gain of 1 when configured for single-endedmeasurements. The PGA gain is automatically calculated based on the voltage range selected in themeasurement application.•ADC—The analog-to-digital converter (ADC) digitizes the AI signal by converting the analog voltage into digital code.•AI FIFO—The NI USB-6008/6009 can perform both single and multiple analog-to-digital conversions of a fixed or infinite number of samples. A first-in-first-out (FIFO) buffer holds dataduring AI acquisitions to ensure that no data is lost.Analog Input Modes and Signal SourcesYou can configure the AI channels on the NI USB-6008/6009 to take differential or referencedsingle-ended (RSE) measurements. Table6 summarizes the recommended analog input mode(s) forfloating signal sources and ground-referenced signal sources. Refer to Table5 for more informationabout I/O connections for single-ended or differential measurements.Table 6. Analog Input ConfigurationsFloating Signal SourcesA floating signal source is not connected to the building ground system, but has an isolatedground-reference point. Some examples of floating signal sources are outputs of transformers, thermocouples, battery-powered devices, optical isolators, and isolation amplifiers. An instrument or device that has an isolated output is a floating signal source.Refer to the NI Developer Zone document, Field Wiring and Noise Considerations for Analog Signals, for more information. To access this document, go to /info and enter the Info Code rdfwn3. When to Use Differential Connections with Floating Signal SourcesUse DIFF input connections for any channel that meets any of the following conditions:•Your application requires input ranges other than ±10 V.•The input signal is low level and requires greater accuracy.•The leads connecting the signal to the device are greater than 3m (10ft).•The input signal requires a separate ground-reference point or return signal.•The signal leads travel through noisy environments.•Two analog input channels, AI+ and AI–, are available for the signal.DIFF signal connections reduce noise pickup and increase common-mode noise rejection. DIFF signal connections also allow input signals to float within the working voltage of the device.Refer to the Taking Differential Measurements section for more information about differential connections.When to Use Referenced Single-Ended (RSE) Connections with Floating Signal SourcesOnly use RSE input connections if the input signal meets all of the following conditions:•The input signal can share a common reference point, GND, with other signals that use RSE.•Your application permits the use of the ±10 V input range.•The leads connecting the signal to the device are less than 3m (10ft).DIFF input connections are recommended for greater signal integrity for any input signal that does not meet the preceding conditions.In the single-ended modes, more electrostatic and magnetic noise couples into the signal connections than in DIFF configurations. The coupling is the result of differences in the signal path. Magnetic coupling is proportional to the area between the two signal conductors. Electrical coupling is a function of how much the electric field differs between the two conductors.With this type of connection, the PGA rejects both the common-mode noise in the signal and the ground potential difference between the signal source and the device ground.Refer to the Taking Referenced Single-Ended Measurements section for more information about RSE connections.Ground-Referenced Signal SourcesA ground-referenced signal source is a signal source connected to the building system ground. It is already connected to a common ground point with respect to the device, assuming that the computer is plugged into the same power system as the source. Non-isolated outputs of instruments and devices that plug into the building power system fall into this category.The difference in ground potential between two instruments connected to the same building power system is typically between 1 and 100 mV, but the difference can be much higher if power distribution circuits are improperly connected. If a grounded signal source is incorrectly measured, this difference can appear as measurement error. Follow the connection instructions for grounded signal sources to eliminate this ground potential difference from the measured signal.Refer to the NI Developer Zone document, Field Wiring and Noise Considerations for Analog Signals, for more information. To access this document, go to /info and enter the Info Code rdfwn3. When to Use Differential Connections with Ground-Referenced Signal SourcesUse DIFF input connections for any channel that meets any of the following conditions:•Your application requires input ranges other than ±10 V.•The input signal is low level and requires greater accuracy.•The leads connecting the signal to the device are greater than 3m (10ft).•The input signal requires a separate ground-reference point or return signal.•The signal leads travel through noisy environments.•Two analog input channels, AI+ and AI–, are available for the signal.DIFF signal connections reduce noise pickup and increase common-mode noise rejection. DIFF signal connections also allow input signals to float within the working voltage of the device.Refer to the Taking Differential Measurements section for more information about differential connections.When to Use Referenced Single-Ended (RSE) Connections with Ground-Referenced Signal Sources Do not use RSE connections with ground-referenced signal sources. Use differential connections instead.As shown in the bottom-rightmost cell of Table6, there can be a potential difference between GND and the ground of the sensor. In RSE mode, this ground loop causes measurement errors.Taking Differential MeasurementsFor differential signals, connect the positive lead of the signal to the AI+terminal, and the negative lead to the AI– terminal.Figure 8. Connecting a Differential Voltage SignalThe differential input mode can measure ±20 V signals in the ±20V range. However, the maximum voltage on any one pin is ±10 V with respect to GND. For example, if AI 1 is +10 V and AI 5 is –10 V, then the measurement returned from the device is +20 V.Figure 9. Example of a Differential 20 V MeasurementConnecting a signal greater than ±10 V on either pin results in a clipped output.Figure 10. Exceeding ±10 V on AI Returns Clipped OutputTaking Referenced Single-Ended MeasurementsTo connect referenced single-ended (RSE) voltage signals to the NI USB-6008/6009, connect thepositive voltage signal to an AI terminal, and the ground signal to a GND terminal, as shown inFigure11.Figure 11. Connecting a Referenced Single-Ended Voltage SignalWhen no signals are connected to the analog input terminal, the internal resistor divider may cause the terminal to float to approximately 1.4 V when the analog input terminal is configured as RSE. Thisbehavior is normal and does not affect the measurement when a signal is connected.Digital TriggerYou can configure PFI0 as a digital trigger input for analog input tasks. Refer to the Using PFI0 as a Digital Trigger section for more information.Analog OutputThe NI USB-6008/6009 has two independent analog output channels that can generate outputs from 0 to 5 V. All updates of analog output channels are software-timed. GND is the ground-reference signal for the analog output channels.Figure12 shows the circuitry of one analog output channel on the NI USB-6008/6009.Figure 12. Circuitry of One Analog Output ChannelThe main block featured in the NI USB-6008/6009 analog output circuitry is the digital-to-analogconverter (DAC), which converts digital codes to analog voltages. There is one DAC for each analogoutput line.Connecting Analog Output LoadsTo connect loads to the NI USB-6008/6009, connect the positive lead of the load to the AO terminal,and connect the ground of the load to a GND terminal, as shown in Figure13.Figure 13. Connecting a LoadMinimizing Glitches on the Output SignalWhen you use a DAC to generate a waveform, you may observe glitches in the output signal. Theseglitches are normal; when a DAC switches from one voltage to another, it produces glitches due toreleased charges. The largest glitches occur when the most significant bit of the DAC code changes. You can build a lowpass deglitching filter to remove some of these glitches, depending on the frequency and nature of the output signal. For more information about minimizing glitches. refer to theKnowledgeBase document, Reducing Glitches on the Analog Output of MIO DAQ Devices. To access this document, go to /info and enter the Info Code ex s zek.。
gerber file(文件)说明介绍
G E R B E R F I L E 简介
常见数字和字母意义 D01 LIGHT ON D02 LIGHT OFF D03 FLASH D10 Dn APETURE CODE G54 更换镜头 M02 结束
M02 R S - 2 7 4 - X 格式 EX %FSLAX24Y24*% INCH %IPPOS*%%MO IN *% %AMETCH100V* 22 1 0.075000 0.075000 -0.000700 -0.000700 -45.000000* 22 1 0.075000 0.075000 0.000000 0.000000 135.000000* % %ADD10C 0.01500*% %ADD11C 0.01000*% %ADD12C 0.01400*% %ADD13C 0.02500*% %ADD14C 0.05000*% %ADD15C 0.07500*% %ADD17C 0.06600*% %ADD24C 0.08000*% %ADD25C 0.17500*% %ADD26C 0.09000*% %ADD27C 0.10000*% %ADD28C 0.06000*% %LNE115.GTL*% %LPD*% -------作线
ANNULUS
TARGET
THERMAL 花孔
使用者自定义镜头 CUSTOMER APETURE
常见镜头档格式 见 C \CONVERT 目录下的 DOC 文件
X149.19Y62.01M50 X149.2Y-.04M50M30 X10.Y-7.5M30 X16.01Y3.3T04M31 X61.67Y3.28 X76.95Y3.28 XYM50 X.01Y62.M50 X.03Y124.07M50 X.04Y186.09M50 X149.18Y186.07M50 X149.21Y124.04M50 X149.19Y62.01M50 X149.2Y-.04M50M30 X20.Y-7.5M30 E x e l . d r l 格式 EX % M48 T1C0.125 T2C0.028 T3C0.035 T4C0.0394 T5C0.04 T6C0.0433 % T1 X0Y114222 X0025Y114222 X06417Y114722 X12584Y114222 X12834Y114222 X12834Y-002 X12584Y-002 X06417Y-0025 X005Y-002 X0025Y-002 X0Y-002 T2 X0311Y00788 X03425Y00788
关于8051 bootloader的一个思路 (amoBBS 阿莫电子论坛)
关于8051 bootloader的一个思路(amoBBS 阿莫电子论坛)前一段时间做了个8051的bootloader,在C8051F340上运行,效果还可以。
基本思路如下:1,中断向量的处理。
考虑到应用的可靠性,bootloader不应被擦除,而bootloader 和中断向量表通常都在单片机程序区的起始位置,所以中断向量表也不能变。
有些bootloader的解决方法是对主程序里的所有中断函数定位,这样做很麻烦。
我的解决的办法是,在startup.a51里,添加这样的语句org 0003Hljmp 3000Horg ....ljmp .....0003H是第一个中断的入口,而3000H是主程序里的地址,在这里用一系列org、ljmp的语句全部跳到3000H 开始的连续位置。
在主程序的工程属性里,option for target->C51,Interrupt vectors at设置里,设置为0x3000。
这样,编译器就会把中断入口函数定位在3000H开始的位置。
唯一的缺点只是所有的中断会延迟一个ljmp指令的执行周期。
这样做,主程序里就不必对中断函数做特别的处理。
2,bootloader的处理流程:首先,bootloader检查主程序是否正常。
主程序在下载的时候,会提供一个校验码,这个校验码也会保存在一个特定位置,如果发现校验码出错,则提示并进入下载模式然后,bootloader检查有没有用户要求升级的(这个请求可以来自任何通讯接口),如果有,则进入升级模式。
如果主程序没有错误,在一定时间内也没有用户要求升级的请求,则进入主程序开始运行。
因为前面提到,中断向量表已经做了重映射,所以bootloader 里一般不使用中断。
3,主程序的处理主程序除了第一点提到的,要对中断向量做一个重定位,还需要对入口定位,以确保bootloader顺利进入主程序。
另外,主程序需要在工程属性里设置ROM地址范围,当然,那个重映射的中断向量表,肯定要在这个范围内。
CodeWarrior使用说明
htt第p:/一/bb章s.el认ecf识oomd电eW子技a术rr论io坛r 电子发烧上友海天马
5.5.4).隐藏文件夹(Shielded Folders): 在这里指定的文件夹在工程设计期间,或 执行查找和比较操作期间,将要被忽略掉.如果在你的工程级有一个巨大的“数据”文 件目录,而你又不想让这些文件降低CodeWarrior 的操作速度时,这个设置就很管用 了;
5.3.2).视窗化(Windowing): 设定调试器如何管理它的窗口(比如隐藏所有打开 的编辑器窗口);
htt第p:/一/bb章s.el认ecf识oomd电eW子技a源自rr论io坛r 电子发烧上友海天马
5.3.3).全局设置(Global Settings): 几个用于定制调试器在全局层次如何工作 的设置。比如当一个包含了程序调试信息的文件被打开时,是否启动这个程序;
的使用的设置。正如你所见到的,CodeWarrior 有许多设置项和选项。设置完后点 击“Save”按钮保存你所作的修改,点击“Close”按钮将忽略你所作的所有修改。在进 入下一节课之前,多练习几次。最后请确认“默认的文本文件格式(Default Text File Format)”(在编辑器设置面板中)保持为 DOS 设置。
htt第p:/一/bb章s.el认ecf识oomd电eW子技a术rr论io坛r 电子发烧上友海天马
1). CodeWarrior 能做些什么? A).使用 C/C++ 进行编程 B).也支持 Java 开发 本课程仅限于应用C/C++ 语言在 Windows 平台上使用 CodeWarrior 进行的开发. 2). CodeWarrior 优点是什么? CodeWarrior 能够自动地检查代码中的明显错误,它通过一个集成的调试器和编辑器来扫描
总结 fpga难学 的几大原因 (amobbs 阿莫电子论坛)
总结FPGA难学的几大原因(转)(amoBBS 阿莫电子论坛)为什么很多菜鸟始终无法入门?为什么大量的人会觉得FPGA难学?开贴来详细讲一下菜鸟觉得FPGA难学的几大原因:1、不熟悉FPGA的内部结构,不了解可编程逻辑器件的基本原理。
FPGA为什么是可以编程的?恐怕很多菜鸟不知道,他们也不想知道。
因为他们觉得这是无关紧要的。
他们潜意识的认为可编程嘛,肯定就是像写软件一样啦。
软件编程的思想根深蒂固,看到Verilog或者VHDL就像看到C语言或者其它软件编程语言一样。
一条条的读,一条条的分析。
如果这些菜鸟们始终拒绝去了解为什么FPGA是可以编程的,不去了解FPGA的内部结构,要想学会FPGA 恐怕是天方夜谭。
虽然现在EDA软件已经非常先进,像写软件那样照猫画虎也能综合出点东西,但也许只有天知道EDA软件最后综合出来的到底是什么。
也许点个灯,跑个马还行。
这样就是为什么很多菜鸟学了N久以后依然是一个菜鸟的原因。
那么FPGA为什么是可以“编程”的呢?首先来了解一下什么叫“程”。
启示“程”只不过是一堆具有一定含义的01编码而已。
编程,其实就是编写这些01编码。
只不过我们现在有了很多开发工具运算或者是其它操作。
所以软件是一条一条的,通常都不是直接编写这些01编码,而是以高级语言的形式来编写,最后由开发工具转换为这种01编码而已。
对于软件编程而言,处理器会有一个专门的译码电路逐条把这些01编码翻译为各种控制信号,然后控制其内部的电路完成一个个的读,因为软件的操作是一步一步完成的。
而FPGA的可编程,本质也是依靠这些01编码实现其功能的改变,但不同的是FPGA之所以可以完成不同的功能,不是依靠像软件那样将01编码翻译出来再去控制一个运算电路,FPGA里面没有这些东西。
FPGA内部主要三块:可编程的逻辑单元、可编程的连线和可编程的IO模块。
可编程的逻辑单元是什么?其基本结构某种存储器(SRAM、FLASH等)制成的4输入或6输入1输出地“真值表”加上一个D触发器构成。
RefMan_mmslite(前30页)
COPYRIGHT NOTICE
© Copyright 1994 - 2008 Systems Integration Specialists Company Inc., All Rights Reserved. This document is provided under license to authorized licensees only. No part of this document may be copied or distributed, transmitted, transcribed, stored in a retrieval system, or translated into any human or computer language, in any form or by any means, electronic, mechanical, magnetic, manual, or otherwise, disclosed to third parties, except as allowed in the license agreement, without the express written consent of Systems Integration Specialists Company Incorporated, 6605 19½ Mile Road, Sterling Heights, MI, 48314, U.S.A.
Tel: +586-254-0020, Fax: +586-254-0053 E-Mail: support@, URL: http:\\
Printed in U.S.A.
07/2008
DWG#100275/2.4
把Lua移植到stm32上,效果不错!(amoBBS阿莫电子论坛)
把Lua移植到stm32上,效果不错!(amoBBS阿莫电子论坛)因为我们产品的需要满足不同行业需求,所以一直在寻找一个脚本语言,以便灵活配置。
前段时间还自己花时间去实现一个C语言解释器,看了一堆编译原理的东西,以及虚拟机等,头都搞大了,把基本功能实现了,但总是不满意。
后来看到lua,网上一搜:才知道魔兽世界的插件就是lua写的....,愤怒的小鸟也是lua写的,lua在苹果和android都支持lua语言开发,lua已经成为移动平台开发的新贵...lua是纯c写的最高效的脚本语言...恍然大悟,原来lua就是我要找的东西啊!正所谓:梦里寻他千百度,蓦然回首,那人却在灯火阑珊处!于是立即产生了把lua移植到stm32的想法。
到网上查了半天stm32移植lua的资料,居然一篇都没有找到,失望啊。
难道我是第一个干这事的蠢人?没办法,只好硬着头皮上了!lua果然名不虚传,代码极其简略,移植性极高,由标准ansi c写成。
移植过程非常顺利,在IAR下编译后只有几十K字节。
编译了一个bin下载到stm32后,立马就顺利运行起来。
为了测试lua的内存的需求,我把ram设置到48k字节,结果运行很顺利。
看来lua对内存的需求确实很小。
在STM32处于24M的频率下,测试了一下lua脚本的运行效率,大致为每秒2万次浮点计算。
(在我的电脑上测试lua是每秒1千万次运算)。
如果stm32设置到72M的话,大致应该是每秒6万次浮点运算。
花了几分钟时间,通过lua c api实现了几个api函数让lua调用,感觉lua和c的交互调用确实极其方便。
int main(){.....Sys_TimerInit();SerialPort_Init();IWDG_Configuration();WWDG_Configuration();__set_PRIMASK(0);Sys_TimerRequest(OTimerID7,50,1);// 这是main里面的调用luaL = lua_open();luaopen_base(L);//注_册自己的c函数到lua中lua_register(L, "average", average);lua_register(L, "Lsleep", Lsleep);lua_register(L, "Lmyputs0", Lmyputs0);InitTasks();AddTask(facetask,1);AddTask(uart0task,1);float a,c2;char buf[100];//这里是lua脚本,脚本里面又调用了自己定义得c函数, Lmyputs0---串口输出函数 average --平均值函数, Lsleep--延时函数strcpy(buf," Lmyputs0(\"start!\",6); c2=2; a1 = {\"one\",\"two\",\"three\"} a=average(10, 20, 30, 40, 50); count=0; while 1>0 do \r\n count=count+1; Lmyputs0(a1[(count%3)+1],6); Lsleep (300); \r\n end; \r\n Lmyputs0(\"end!\",4)");//让lua运行脚本!luaL_dostring(L, buf);...}//下面是几定义的函数static int average(lua_State *L) {/* 得到参数个数 */int n = lua_gettop(L); double sum = 0;int i;/* 循环求参数之和 */for (i = 1; i <= n; i++){/* 求和 */sum += lua_tonumber(L, i); }/* 压入平均值 */lua_pushnumber(L, sum / n); /* 压入和 */lua_pushnumber(L, sum);/* 返回返回值的个数 */return 2;}static int Lsleep(lua_State *L){int d;PT_Timer_t tmr0;d=lua_tonumber(L, 1);PT_TimerSet(&tmr0,d);while(PT_TimerExpired(&tmr0)==false){WDT_FLAG = 0;RunTaskList();}lua_pushnumber(L, 1);return 1;}static int Lmyputs0(lua_State *L){char *buf;int len;buf=(char *)lua_tostring(L,1);len=lua_tonumber(L, 2);myputs0(buf,len);lua_pushnumber(L, 1);return 1;}//---------------附lua的说明------------------------Lua 是一个小巧的脚本语言。
智能手机供应链厂家信息大全
智能手机供应链厂家信息大全一、手机供应链:手机方案公司及其运营商﹀①高通方案公司及运营商:﹀D:东方拓宇H:辉烨;海信;豪成S:赛博宇华T:同洲;天珑W:沃特沃德;闻泰Y:优电;Z:中科创达其他②MTK方案公司及运营商:﹀B:倍易通;波导;宝捷讯D:鼎智;鼎为;鼎维尔G:国通世纪;H:海派;华勤;华立德;鸿宇;豪成;华粤世通J:金科龙K:酷派L:龙旗;朗易通R:锐嘉科S:兴格;三木通讯T:TCL-机甲;天亦达;W:闻尚Z:致远其他③展讯方案公司:﹀G:国通世纪K:康永S:天亦达;三木通讯Y:亿景L:领阳(上海)其他④方案/OEM/ODM(手机):﹀A:阿龙;阿尔法;B:比亚迪;邦华;邦旭;贝龙;博瑞世纪;C:晨沃;创翔;创百通讯;长今宏鑫;成尔;纬创;D:迪斯卡威;鼎智;德戎;德信;德晨;鼎勤;德晟;东方拓宇;东铁通讯;多美达;F:凡卓;富士康;G:国速科技;国乾;广达;格林;H:豪成;海派;华录;华立德;海信移动;海莱威;华粤世通;华贝;华旗;华域无线;泓为;和立信;J:经纬;极简时代;金淼;矩阵技术;金百锐;甲金;巨盛;劲胜;捷荣;K:康捷;科飞;凯赫威;L:亮讯;浪尖;朗易通;领阳;乐购天地;M:迈想;摩天时代;明唐;明泰;N:宁波万豪;O:欧博信;欧孚;奥尔提;Q:旗开通讯;祈锦通信;七星河;R:锐嘉科;二中科技;润讯;仁宝;S:桑菲;赛博宇华;胜诺达;盛思达;盛耀无线;首亿;世誉信达;T:天奕达;天燚通信;天科智慧;腾瑞丰;天讯龙;腾信;同威;W:沃特沃德;无线开锋;泰达讯;伟创力X:希姆通;新圳宇;新翔通讯;兴格;旭斧;信云无线;讯锐;鑫龙上;星宝通Y:翼达龙;与德;优利麦克;友利通;亿华创新;易通无限;英华达;友恺;易百思特;亚力通;易希拓克;亚创达;易丰展业;裕元华阳;因塔斯Z:致远控股;展唐;展维锋;钻石龙;至高通信;其他⑤OEM/ODM/品牌(海外手机):﹀A:Alcatel;阿德曼;爱德普;安谷;B:百立丰;博源新;宝捷讯;贝尔丰;倍易通;C:传音;财富之舟;诚信赢D:鼎为;东炜烁;迪科诺;鼎泰环球;多诺达;F:富尔美;斐讯;沸石;G:国虹;国威;H:华勤;辉烨;禾苗;华掌;汇萃;华强科技;华旭昌;弘年;J:极泰;金立;景山;基伍;基思瑞;金科龙;金飞盛;嘉兰德;江元通信;K:垦鑫达;科潮;铠瑞特;科永泰;康凯斯;L:龙旗;蓝岸通讯;M:MMAX;模拜通讯;盟博;N:诺亚信;纽曼;O:oking;奥利丰;O-NINE;欧特达;欧拓;P:苹果;R:锐来科;荣创辉;S:三星;三木;世纪天元;盛泰辉;松铭通讯;思路名扬;赛龙;赛特尔;德赛T:天珑;天津通广;天威通信;泰屹;W:闻泰;网佳数码;威尔肯;闻尚;X:西可;新飞扬;新智慧;鑫盛达;Y:优思;优美;永华利鸿;易景;Z:智讯;兆信通;其他⑥品牌(手机)—电商品牌:﹀B:北斗青葱;C:锤子手机;D:大V;大Q;大神;大可乐;F:富可视;H:HIKE;黑米;I:INUI;Innos;K:卡卓;L:朗界;M:mobile;美图;N:nibiru ;Nubia;O:OUKI;Q:Q7;青橙;R:荣耀;S:SUGAR;神舟T:takee;U:UBTEL;W:薇卡veaka;X:小艾;小宇宙;小采手机;小C;小蜜蜂;小米;小辣椒;Y:原点;誉品小刚;一加;Z:至简;⑦品牌(手机)—传统品牌:﹀B:步步高;波导;宝捷讯;贝尔丰;宝方;邦华创世能;贝多芬;C:Coolgen;传奇;Cect KZG;长虹;Chill ctyon Wpone;D:朵唯;鼎瑄;多诺达;大为;帝唯;E:EBEST;F:锋达通;斐讯;G:广信;国虹;国信通;国派;H:华为;海信;海尔;华立;渴望;华世基;恒宇丰;华纳威秀;华星讯达;I:iwoo;J:金立;佳域;京崎;京立;金珀;金赢;K:康佳;酷比;酷派;凯利通;酷美;康维斯;KINTNIK;垦鑫达;科潮;KINGWILL;L:联想;Lephone;聆韵;蓝博兴;力派;联合利通;拉飞lafee;酷宝;M:脉腾;美富通;米歌;米蓝;摩天;铭仁;魅族;N:诺利佳;NAIDE;NCHONHONG;O:OPPO;奥利信;奥克斯;O-NINE;奥洛斯;欧博信;奥卓IVIO;P:普天同乐;纽曼;派对;Q:七星河;全智达;S:三盟;桑菲;德赛;三巨网;森阳;赛博;盛况;T:TCL;天宇;THL;天迈;T-win VEB;泰胜;U:UNISTAR;Uphone;UTime;V:voto手机;W:为美;X:新中桥;小鱼;Y:亿通;优美;优乐酷;友信达;中维恒泰;亿和源;英迈;Z:中兴;兆信;智珀;至尊宝;智惠;卓普;⑧品牌(手机)—不活跃品牌:﹀A:爱我;爱尔马;艾酷;奥乐;爱信;B:百分百;八零九零;C:创雅;创客;D:大米;地峰;多比;F:凡美;富尔美;G:高科;高新奇;港利通;H:HIKE;Hiphone;华易;宏为;华唐;J:桔子;L:乐购;兰度;蓝天信M:美歌;美奇;蘑菇;N:尼彩;尼奥;你酷;O:欧奇;欧新;欧盛;Q:七喜;齐乐;S:首派;双侨;萨际通;T:同洲;泰克飞石;泰明;天朗K:卡美欧;科宝;W:沃德诚;唯科;唯乐普莱达;闻尚;X:喜莱达;星工场;喜浪;葳朗;Y:英派;友利通;优玖;语信;优乐酷;易丰;英特奇;永科;云狐;100+;喜沃;Z:展翼;中科诺;中诺;中德瑞;其他二、平板供应链:平板方案公司及其运营商﹀①平板主控芯片厂家:﹀F:飞思卡尔;I:Intel;J:晶晨;炬力;君正;M:MTKQ:全志;R:瑞芯微;S:三星T:TelechipsW:威盛;Y:盈方微;Z:中星微;其他②方案(平板):﹀C:创盈芯;彩虹;D:鼎智;E:易连汇通;F:发掘;K:酷芯;L:连科通信;隆科电子;O:奥特姆;奥谷奇;R:瑞丰祺;瑞联;W:未来华文(君越);X:芯威创展;芯派德;芯舞;Y:英特圣;英众科技;银派数码;友坚恒天;益联发;益光;易天;亿矽;芯舞;亿道;芯图;英杰;Z:智联;众芯智汇;中科创达;,,,机甲,飞腾,,美好未来,,,,,和旗,华旭昌,,H鸿景,,纳百川,,,金泰壹,,海克莱特,,索智,,品网,视升,,嘉利信息,冠泓电子,赛维天创,宇通电子,,,天智伟业,天和致远,亿博达,德天,泽迪,天启,劲耀,鑫中宏,佳音时代,鼎汉创新,通文达,申江,实义德,时代精创,同创辉,天星创展,天炬,普方达,,,文晟(誉丞),微步,炜疆,创智成,,辰星通,广和通,比亚迪,播思,汉普,慧为,华芯飞,恒隆电子,海纳天亨,,,颐众,鹰杰,,南巨,蓝岸通讯,江波龙,芯毕耐,深创(昱科),力瑞,,普耐尔,中信太和,秉祥,易联汇通,阿龙,爱健,,金泰一,百能达,普万达,极泰德等等③整机(平板):﹀九洲,京华,雄风,星王,亿东,耐尔,爱高,易方,聚宝石,天鹏胜,蓝晨,阳华,华勤,闻泰,沃特沃德,安科讯,江门三连,星玛,远峰,硕颖,康莱米,E恩捷希,小手网络,富士莱,永脉威,七彩虹,国荣,国威,慧视通,弘仁通明,得宝欣,华阳,五元素,德与方,秋雨,爱美得,芯晶彩,宇创兴业,中汇洲,拓步,美迪飞,卓尼斯,东方风行,金锐显,蓝迪大恒,景翰光电,志腾,国邦兴业,南京摩动,今视通,驰骋信息,华盛达,中科长城,彩虹(佛山),金研微,瑞谷电子,爱培科,易乐数码,琥智数码,德凯胜,宝龙达,五洋洲,勤毅数码,艾普,拓莱思,永思高科,富臻,爱可欧,海棠通讯,组创微,斯达泰,协创立科,海威,依诺信,恒必达,安卓信,忆博通,亚忆,百仕威,小竹林,安鸿联兴,威富,康海,铱斯达锐,恒晨,南方视讯,凯意达,美智,数字印,启鹏天辰,祺利,金百盛,吉兆,惠科等等④品牌(平板):﹀昂达,蓝魔,台电,酷比,原道,艾诺,爱可视,欧恩,伟彦,乐方舟,金星,吉祥星,菲星数码,乐凡,状元郎,双双,驰为,紫米三、液晶屏产业链﹀①液晶模组厂家:﹀天马、同兴达、信利、三龙显示、TCL显示、帝晶、中光电、天亿富、比亚迪、永信、星源、煜彩、国显、京东方、宝锐视、亿都、夏普、东芝、NEC、日立、京瓷、三菱、索尼、富士通,亿华,博一,雅视,易欣达,优纳思,维拓,比亚迪,宇顺,海飞,德思普,凯圣德,立德通讯,莱宝,兴展,聚睿鼎等等。
最全proteus元件库对照表,希望对大家有所帮助(amoBBS阿莫电子论坛)
最全proteus元件库对照表,希望对大家有所帮助(amoBBS阿莫电子论坛)1.Analog IcsAmplifier : 放大器Comparators: 比较器Display Drivers: 显示驱动器Filters: 滤波器Miscellaneous: 混杂器件Regulators: 三端稳压器Timers: 555定时器Voltage References: 参考电压2.Capacitors:Animated: 可显示充放电电荷电容Audio Grade Axial: 音响专用电容Axial Lead polypropene 径向轴引线聚丙烯电容Axial Leda polystyrene 径向轴引线聚苯乙烯电容Ceramic Disc 陶瓷原片电容Decoupling Disc 解耦圆片电容Generic 普通电容High Temp Radial 高温径向电容High temp Axial Electrolytic 高温径向电解电容Metallised Polyester Film 金属聚酯膜电容Metallised polypropene 金属聚丙烯电容Metallised polypropene Film 金属聚丙烯莫电容Miniture Electorlytic 微型电解电容Multilayer Metallised Polyester Film 多层金属聚酯膜电容Mylar Film 聚酯膜电容Nicket Barrier 溴删电容Non Polarised 无极性电容Polyester Layer 聚酯层电容Radial Electrolytic 径向电解电容Tantalum Bead 树脂浊刻电容Variable 可变电容VX Axial Electrolytic VX 轴电解电容3 .CMOS 4000 seriesAdders 加法器buffers&Drivers 缓冲和驱动器Comparators 比较器Counters 计数器Decoders 译码器Encoders 编码器Flip-Flops&Latches 触发器和锁存器Frequency Dividers&Timer 分频和定时器Gates & Inverters 门电路和反相器Memory 存储器Misc.Logic 混杂逻辑电路Mutiplexers 数据选择器Multivibrators 多谐振荡器Phase_Locked Loops(PLL) 锁相环Registors 寄存器Signal Switcher 信号开关4.Connectors 接头Audio 音频接头D-Type D型接头DIL 双排插座Header Blocks 插头Miscellaneous 各种接头PCB Transfer PCB传输接头SIL 单排插座Ribbon Cable 蛇皮电缆Terminal Blocks 接线端子台5.Data Converters 数据转化器A/D Converters 模数转换器D/A Converters 数模转换器Sample &Hold 采样保持器Temperature Sensors 温度传感器6.Debugging TOOls 调试工具Breakpoint TriggersLogic ProbesLogic Stimuli7.Diodes 二极管Bridge Rectifiers 整流管Generic 普通二极管Rectifiers 整流二极管Schottky 肖特基二极管Switching 开关二极管Tunnel 隧道二极管Varicap 变容二极管Zenner 稳压二极管8.Inductors 电感GenericSMT Inductors Transformersplace Primitives 拉普拉斯模型1st Order2nd OrderControllersNon_LinearOperatorsPoles/ZerosSymbols10.Memory ICs 存储器芯片(包括常用的I2C,SPI芯片)Dynamic RAM 动态数据存储器EEPROM 电可擦除的EPROM 可擦除的I2C Memories I2c总线存储器Memory Cards 存储卡SPI Memories spi总线存储器Static RAM 静态数据存储器模拟芯片(Analog ICs)放大器(Amplifiers)比较器(Comparators)显示驱动器(Display Drivers)过滤器(Filters)数据选择器(Multiplexers)稳压器(Regulators)定时器(Timers)基准电压(Voltage Reference)杂类(Miscellananeous)电容(Capacitors)可动态显示充放电电容(Animated)音响专用轴线电容(Audio Grade Axial)轴线聚苯烯电容(Axial Lead Polypropene)轴线聚苯烯电容(Axial Lead Polystyrene)陶瓷圆片电容(Ceramic Disc)去耦片状电容(Decoupling Disc)普通电容(Generic)高温径线电容(High Temp Radial)高温径线电解电容(High Temperature Axial Electrolytic)金属化聚酯膜电容(Metallised Polyester Film)金属化聚烯电容(Metallised Polypropene)金属化聚烯膜电容(Metallised Polypropene Film)小型电解电容(Miniture Electrolytic)多层金属化聚酯膜电容(Multilayer Metallised Polyestern Film) 聚脂膜电容(Mylar Film)镍栅电容(Nickel Barrier)无极性电容(Non Polarised)聚脂层电容(Polyester Layer)径线电解电容(Radial Electrolytic)树脂蚀刻电容(Resin Dipped)钽珠电容(Tantalum Bead)可变电容(Variable)VX轴线电解电容(VX Axial Electolytic)连接器(Connectors)音频接口(Audio)D 型接口(D-Type)双排插座(DIL)插头(Header Blocks)PCB转接器(PCB Transfer)带线(Ribbon Cable)单排插座(SIL)连线端子(T erminal Blocks)杂类(Miscellananeous)数据转换器(Data Converter)模/数转换器(A/D converters)数/模转换器(D/A converters)采样保持器(Sample & Hold)温度传感器(Temperature Sensore)调试工具(Debugging Tools)断点触发器(Breakpoint Triggers) 逻辑探针(Logic Probes)逻辑激励源(Logic Stimuli)二极管(Diode)整流桥(Bridge Rectifiers)普通二极管(Generic)整流管(Rectifiers)肖特基二极管(Schottky)开关管(Switching)隧道二极管(Tunnel)变容二极管(Varicap)齐纳击穿二极管(Zener)ECL 10000系列(ECL 10000 Series) 各种常用集成电路机电(Electromechanical)各种直流和步进电机电感(Inductors)普通电感(Generic)贴片式电感(SMT Inductors)变压器(Transformers)拉普拉斯变换(Laplace Primitives) 一阶模型(1st Order)二阶模型(2st Order)控制器(Controllers)非线性模式(Non-Linear)算子(Operators)极点/零点(Poles/Zones)符号(Symbols)存储芯片(Memory Ics)动态数据存储器(Dynamic RAM)电可擦除可编程存储器(EEPROM)可擦除可编程存储器(EPROM)I2C总线存储器(I2C Memories)SPI总线存储器(SPI Memories)存储卡(Memory Cards)静态数据存储器(Static Memories)微处理器芯片(Microprocess ICs)6800 系列(6800 Family)8051 系列(8051 Family)ARM 系列(ARM Family)AVR 系列(AVR Family)Parallax 公司微处理器(BASIC Stamp Modules)HCF11 系列(HCF11 Family)PIC10 系列(PIC10 Family)PIC12 系列(PIC12 Family)PIC16 系列(PIC16 Family)PIC18 系列(PIC18 Family)Z80系列(Z80 Family)CPU 外设(Peripherals)杂项(Miscellaneous)含天线、ATA/IDE硬盘驱动模型、单节与多节电池、串行物理接口模型、晶振、动态与通用保险、模拟电压与电流符号、交通信号灯建模源(Modelling Primitives)模拟(仿真分析)(Analogy-SPICE)数字(缓冲器与门电路)(Digital--Buffers&Gates)数字(杂类)(Digital--Miscellaneous)数字(组合电路)(Digital--Combinational)数字(时序电路)(Digital--Sequential)混合模式(Mixed Mode)可编程逻辑器件单元(PLD Elements)实时激励源(Realtime Actuators)实时指示器(Realtime Indictors)运算放大器(Operational Amplifiers)单路运放(Single)二路运放(Dual)三路运放(Triple)四路运放(Quad)八路运放(Octal)理想运放(Ideal)大量使用的运放(Macromodel)光电子类器件(Optoelectronics)七段数码管(7-Segment Displays)英文字符与数字符号液晶显示器(Alphanumeric LCDs) 条形显示器(Bargraph Displays)点阵显示屏(Dot Matrix Display)图形液晶(Grphical LCDs)灯泡(Lamp)液晶控制器(LCD Controllers)液晶面板显示(LCD Panels Displays)发光二极管(LEDs)光耦元件(Optocouplers)串行液晶(Serial LCDs)可编程逻辑电路与现场可编程门阵列(PLD&FPGA)无子类电阻(Resistors)0.6W金属膜电阻(0.6W Metal Film)10W 绕线电阻(10W Wirewound)2W 金属膜电阻(2W Metal Film)3W 金属膜电阻(3W Metal Film)7W 金属膜电阻(7W Metal Film)通用电阻符号(Generic)高压电阻(High Voltage)负温度系数热敏电阻(NTC)排阻(Resisters Packs)滑动变阻器(Variable)可变电阻(Varistors)仿真源(Simulator Primitives)触发器(Flip-Flop)门电路(Gates)电源(Sources)扬声器与音响设备(Speaker&Sounders) 无子分类开关与继电器(Switch&Relays)键盘(Keypads)普通继电器(Generic Relays)专用继电器(Specific Relays)按键与拨码(Switchs)开关器件(Switching Devices)双端交流开关元件(DIACs)普通开关元件(Generic)可控硅(SCRs)三端可控硅(TRIACs)热阴极电子管(Thermionic Valves)二极真空管(Diodes)三极真空管(Triodes)四极真空管(Tetrodes)五极真空管(Pentodes)转换器(Transducers)压力传感器(Pressures)温度传感器(Temperature)晶体管(Transistors)双极性晶体管(Bipolar)普通晶体管(Generic)绝缘栅场效应管(IGBY/Insulated Gate Bipolar Transistors结型场效应晶体管(JFET)金属-氧化物半导体场效应晶体管(MOSFET)射频功率LDMOS晶体管(RF Power LDMOS)射频功率VDMOS晶体管(RF Power VDMOS)单结晶体管(Unijunction)CMOS 4000系列(CMOS 4000 series TTL 74系列(TTL 74 series) TTL 74增强型低功耗肖特基系列(TTL 74ALS Series) TTL 74增强型肖特基系列(TTL 74AS Series) TTL 74高速系列(TTL 74F Series) TTL 74HC系列/CMOS工作电平(TTL 74HC Series) TTL 74HCT系列/TTL 工作电平(TTL 74HCT Series)TTL 74低功耗肖特基系列(TTL 74LS Series) TTL 74肖特基系列(TTL 74S Series)加法器(Adders)缓冲器/驱动器(Buffers&Drivers)比较器(Comparators)计数器(Counters)解码器(Decoders)编码器(Encoders)存储器(Memory)触发器/锁存器(Flip-Flop&Latches)分频器/定时器(Frequency Dividers & Timers)门电路/反相器(Gates&Inverters)数据选择器(Multiplexers)多谐振荡器(Multivibrators)振荡器(Oscillators)锁相环(Phrase-Locked-Loop,PLL)寄存器(Registers)信号开关(Signal Switches) 收发器(Tranxceivers)杂类逻辑芯片(Misc.Logic)。
eieye图像识别传感器有了进展 开源原理图 要的速度 (amobbs 阿莫电子论坛)
Eieye图像识别传感器有了进展开源原理图要的速度!(amoBBS 阿莫电子论坛)简介:Eieye是一个图像识别传感器,支持多物体,多色彩的颜色识别。
你可以告诉它你想要的颜色,教它找东西。
Eieye支持多种通信方式,如SPI,I2C等,可以直插在Arduino控制板上面。
把它安装到你的机器人上,为你的小机器人增加一副眼睛。
它搭载的图像传感器配合强大的硬件,可以配合PC跟踪、分析多色的数据。
Eieye是由成都Eieye工作室推出的一款图像传感器。
其强大的处理器上搭载着一个图像传感器,它会选择性的处理有用的信息,因为它采用以颜色为中心的办法——使该产品只是将特定颜色的物体的视觉数据发送给相互配合的微型控制器,而不是输出所有视觉数据以进行图像处理。
所以你的Arduino板或其它微控制器很容易跟它交流,并滕出许多CPU来执行其他事件。
技术规格硬件:处理器: STM32F407, 168MHz, Cortex-M4图像传感器: Omnivision OV7725, 1/4", 640x480目标识别分辨率:320x240帧率:45fps镜头类型: standard M12,焦距3.6mm消耗电流: 80~110 mA输入电流: USB 输入(5V)/宽电压输入(3.3V~5.5V)RAM: 168K bytesFlash: 1M bytes通信接口: UART serial, SPI, I2C, USB HS, digital尺寸: 4CM*4CM软件:Open Source项目:提供Keil工程、程序架构清晰简洁、易于二次开发算法:识别率高、识别帧率45fps、多颜色多目标,最多可识别127个目标、配置8种识别颜色通信:支持USB2.0通信,SPI,UART等驱动:SPI、DCMI等均采用DMA方式,不占用CPU资源调试工具:支持JTAG,Eieye专用上位机其他:提供Arduino联机示例程序,交流论坛Eieye上位机:实时图像显示,具有图像缩放,调速功能,能对Eieye进行参数配置。
求助,为什么在死循环里的全局变量赋值在中断里不起作用,附程序(amoBBS阿莫电子论坛)
求助,为什么在死循环里的全局变量赋值在中断里不起作用,附程序(amoBBS阿莫电子论坛)类型定义关键字的详细说明,希望其他同好不要再犯我这样的低级错误。
(1)auto这个这个关键字用于声明变量的生存期为自动,即将不在任何类、结构、枚举、联合和函数中定义的变量视为全局变量,而在函数中定义的变量视为局部变量。
这个关键字不怎么多写,因为所有的变量默认就是auto的。
(2)register这个关键字命令编译器尽可能的将变量存在CPU内部寄存器中而不是通过内存寻址访问以提高效率。
(3)static常见的两种用途:1>统计函数被调用的次数;2>减少局部数组建立和赋值的开销.变量的建立和赋值是需要一定的处理器开销的,特别是数组等含有较多元素的存储类型。
在一些含有较多的变量并且被经常调用的函数中,可以将一些数组声明为static 类型,以减少建立或者初始化这些变量的开销.详细说明:1>、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值。
这一点是它与堆栈变量和堆变量的区别。
2>、变量用static告知编译器,自己仅仅在变量的作用范围内可见。
这一点是它与全局变量的区别。
3>当static用来修饰全局变量时,它就改变了全局变量的作用域,使其不能被别的程序extern,限制在了当前文件里,但是没有改变其存放位置,还是在全局静态储存区。
使用注意:1>若全局变量仅在单个C文件中访问,则可以将这个变量修改为静态全局变量,以降低模块间的耦合度;2>若全局变量仅由单个函数访问,则可以将这个变量改为该函数的静态局部变量,以降低模块间的耦合度;3>设计和使用访问动态全局变量、静态全局变量、静态局部变量的函数时,需要考虑重入问题(只要输入数据相同就应产生相同的输出)。
(4)const被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。
永不停息的红舞步 一个电子工程师的心路历程
永不停息的红舞步一个电子工程师的心路历程发布者:绝对好文发布时间:2011-3-1 10:04关键字:电子工程师作者:zjd01/search.php?keyword=%D3%C0%B2%BB%CD%A3%CF%A2%B5%C4 %BA%EC%CE%E8%B2%BD+%D2%BB%B8%F6%B5%E7%D7%D3%B9%A4%B3%CC%C A%A6%B5%C4%D0%C4%C2%B7%C0%FA%B3%CC2011年5月24日11:41:50永不停息的红舞步一个电子工程师的心路历程(1)传说中有一对美丽的红舞鞋,穿上它,你将舞出最美丽的舞步……正式从事电子硬件设计工作四年多了,回忆起接触电子的这几年,感触很多……虽然经历了很多酸甜苦辣,但也给我的生活增添了很多色彩……第一次真正意义上的接触电子应当算是高中的时候。
当时很喜欢学校图书馆里的一份杂志,杂志名字不记得了,只记得杂志里有两页是关于电子制作的,当时那两页一直是我的最爱……慢慢的积累了一些电子方面的知识,也逐渐有了自己要做一块电路板的想法……那时我对电子的感情用“痴迷”两个字来形容绝不为过――因这家境不好,我每月只有不到一百块钱的生活费。
我每个月还要瞒着家里从里面省出三四十块钱来从河北永年县邮购电子元件……同学们也许认为我是不正常的,老师也反对我因此而分心。
因为说实话中国现在的所谓素质教育对我们农村学生来说是很不公平的,城里人说我们素质低,所以唯一的出路就是要考高分……乡下孩子唯一的正事就是应试……也许是因为我本身就是很叛逆的,也或许是因为我对电子确实痴迷,我顽固的“不务正业”着。
我做的第一块板子是一个测脉搏的板子,就是把手指放到光敏电阻上方,板子上的灯可以随着指尖的血液流动亮灭的一个小东西。
板子没有成功,这是我自己腐蚀的第一块电路板,也是我真正接触电子以来的第一次失败。
因为当时只知道各元器件的原理,却不清楚元件的实际参数……2001年高考600多一点,也许在城里看还是一个不错的成绩。
IT66121_Programming Guide.v1.05
I T E C o n f i d e n t i a lF o r S T O n l y IT66121 Programming GuideVer 1.05Tseng, Jau-chihITE Tech. Inc.Last Update Date: 2012/09/26I T E C o n f i d e n t i a lF o r S T O n l y History2012/02/29 Create.2012/07/03 Update the initial about the HDCP initial value. 2012/07/10 Update the Audio Format figure. 2012/08/03 Update the Power Saving SectionI T E C o n f i d e n t i a lF o r S T O n l y IndexT ERM ......................................................................................................................................................I Chap 1 Introduce (1)Programming of IT66121 (1)Chap 2 Initial (2)Chip Identifying................................................................................................................................................2 Enable IT66121 Power Register........................................................................................................................2 Initial Power On Sequence................................................................................................................................2 Reset internal circuit.........................................................................................................................................2 Set default DVI mode and turn off all packet....................................................................................................3 Set default interrupt mask for event handling (3)Chap 3 Power Setting (4)Power Down Sequence.....................................................................................................................................4 Power Resume Sequence. (4)Chap 4 Handling Interrupt..............................................................................................................6 Chap 5 DDC Command Programming.. (9)Command – DDC Burst Read (0x0) (10)Get BKSV .........................................................................................................................................11 Get BCaps........................................................................................................................................11 Get BStatus......................................................................................................................................12 Get KSV FIFO List.............................................................................................................................12 Get V’.. (12)Command – EDID Read (0x3)........................................................................................................................13 Command – DDC FIFO Clear (0x9)...............................................................................................................13 Command – Abort DDC Bus (0xF).. (14)Chap 6Program Video Mode (15)Programming Input Signal..............................................................................................................................15 Setting with Input Sync and DE......................................................................................................................18 Setting Sync Embedded and DE Generating (18)Generate DE with given horizontal sync and vertical sync....................................................................19 Generate DE and Horizontal sync/Vertical sync with given sync............................................................21 Sync Embedded for 16 bit Input ........................................................................................................23 Sync Embedded Mode With 8 bit (CCIR656) YCbCr422 Input (24)Setting Color...................................................................................................................................................26 Analog Front End............................................................................................................................................28 DVI HDMI Mode............................................................................................................................................29 Mute................................................................................................................................................................30 Video Pixel Repetition....................................................................................................................................30 Invert Video Data Latch Edge.........................................................................................................................30 Sequence (30)I T E C o n f i d e n t i a lF o r S T O n l y Chap 7Program Audio Mode (31)IEC60958 Programming (31)Audio Clock Recovery (N/CTS)...........................................................................................................31 Audio Format....................................................................................................................................33 Audio Channel Status (36)Chap 8 Activate HDCP (38)Initial HDCP of IT66121.................................................................................................................................38 HDCP State Transition....................................................................................................................................38 HDCP Progress.. (39)A0 – Wait for active Rx......................................................................................................................40 A1 – Exchange KSVs.........................................................................................................................40 A2 – Computations ...........................................................................................................................41 A3 – Validate Receiver.......................................................................................................................41 A6 – Test for Repeater ......................................................................................................................41 A8 – Wait for Ready..........................................................................................................................41 A9 – Read KSV List ...........................................................................................................................41 A4 – Authenticated ...........................................................................................................................42 A5 – Link Integrity Check (42)Reset HDCP....................................................................................................................................................42 Encryption. (42)Chap 9HDMI Infoframe/Package (43)HDMI Packet and CEA861/D Infoframe........................................................................................................44 General Control Package.................................................................................................................................44 Infoframe ........................................................................................................................................................45 A VI Infoframe.................................................................................................................................................45 Audio Infoframe..............................................................................................................................................46 MPEG InfoFrame............................................................................................................................................47 Vendor Specific Regsiters...............................................................................................................................47 SPD/ ISRC1/ISRC2/General Purpose.............................................................................................................47 ACP register. (48)I T E C o n f i d e n t i a lF o r S T O n l y TermBank IT66121 internal registers are accessed by I 2C interface with PCSCL/PCSDA pins. They are separated into two bank, with I 2C Subaddress 0xF[0] to separate. Registers in bank 0 can be accessed when register 0x0F[0] = ‘0’, otherwise the registers in bank 1 can be accessed by update the value of register 0x0F[0] = ‘1’.The registers with subaddress 0x00~0x2F are common accessed whatever the bank register 0x0F[0] is ‘0’ or ‘1’, then the bank can be switched anytime.HDMI High Definition Multimedia InterfaceHPDHot Plug Detect – the voltage value read back from the HDMI HPD pin RegXX Means the register with subaddress XX in bank 0.eg: Reg04 means the register with subaddress 0x04, RegE0 means the register with the subaddress 0xE0, while the reg0F[0] = ‘0’.Reg1XX Means the register with subaddress XX in bank 1.eg: Reg133 means the register with the subaddress 0x33, while reg0F[0] = ‘1’.TxHDMI Transmitter RxHDMI ReceiverHDMI Packet The packets carried in HDMI data island period Infoframe The HDMI packet with the infoframe format defined CEA861B/CEA861D/CEA861EA VMuteThe control bit status defined in the General Control Packet of HDMI.When A VMute set is ‘1’, HDMI Rx should mute the video and audio output, otherwise if the A VMute clear is ‘1’, the video and audio should be present.I T E C o n f i d e n t i a lF o r S T O n l y Chap 1 IntroduceIT66121 uses I 2C bus to program its internal registers. The I 2C slave address is defined as 0x98 when PCADR pin is pulled low, otherwise it is 0x9A. IT66121 series has three packages: IT66121FN, IT66121G, and IT66120FN. The relate pin assignment need to map the corresponding data sheet for each package.There are two banks of registers in IT66121. The bank switching depends on the content of reg0F (in term reg0F means the register accessed by I 2C sub-address is 0x0F), 0 means the given subaddress of I 2C refers to the register set of bank 0; and 1 means the given subaddress of I 2C refers to the register set of bank 1.In following term, reg0yy or regyy means the register set of bank 0 with subaddress 0xyy, which yy is from 0x00 to 0xFF; and reg1zz means the register set of bank 1 with subaddress 0xzz and reg0F=’1’.Programming of IT66121The programming of IT66121 is separated into following parts: zInitial .zDDC Command Programming z Interrupt Handling . zProgram video mode . z Program audio mode . z Activate HDCP zInfoframe Programming And provide software sample interface .I T E C o n f i d e n t i a lF o r S T O n l y Chap 2 InitialTo initial IT66121, the following steps should be implement. 1. Chip identifying 2. Reset internal circuit. 3. Enable clock ring.4. Set default DVI mode and turn off all packet.5.Set default interrupt mask for event handling.Chip IdentifyingBefore programming IT66121 chip, system needs to identify if the chip is IT66121.Reg Register Name Bit Definition Default Value 00 Vender ID 7:0 0x54 01 Vender ID 7:0 0x49 02 Device ID 7:0 0x12 03 Revision ID 7:4 0x0 Device ID 3:00x6As the table, if I 2C slave on address 0x98/0x9A responses the sub-address 0x00 ~ 0x03 with the value as the table above, the device is IT66121.Enable IT66121 Power Register7 Reserved RegGateRCLK 6 1: power down RCLK(for I2C) 0 RegGateIACLK 5 1: power down IACLK (for audio fifo) 0 RegGateTxCLK 4 1: power down Txclk (for CSC) 0 RegGateCRCLK 3 1: power down CRCLK (for CEC) 12 Reserved0FRegBankSel 1:000: Bank 0, reg00h~ regffh01: Bank 1, reg130h ~ reg1ffhBefore enable IT66121, the reg0F[6] has to set as ‘0’ for enabling register programming. When reg0F[6] is set as ‘1’, only the I2C read request can be responded but no writing access available on the chip. For reg0F[5:3] corresponding to the power control of different parts as described above.Initial Power On SequenceReg0F[6]← ‘0’ Reg05[0]← ‘0’Reg61[5]← ‘0’ // power on the DRVReg62[6][2] ← ‘0’ ‘0’ // power on XPLLReg64[6] ← ‘0’ // power on IPLL Reg61[4] ← ‘0’ // enable DRV Reg62[3] ← ‘1’ Reg64[2] ← ‘1’Reset internal circuit.Reg04 is the software reset control register of IT66121. To reset all circuit of IT66121, reg04[5] = ‘1’I T E C o n f i d e n t i a lF o r S T O n l y then reset to zero, all circuit will be zero.To enable functions for using, the bits of reg04 should be cleared to zero for enabling. In initial state, reg04 should be 0x1D to wait for function enable.Set default DVI mode and turn off all packet.IT66121 usually set to DVI mode under initial state. RegC0 is set to zero for DVI mode, and RegC1~RegD0 are all set to zero for disabling all HDMI packets; reg158 is set to zero for output RGB444 mode under DVI mode.Set default interrupt mask for event handling.IT66121 interrupt mask are defined in reg09~reg0B. The bits in these registers are for each interrupt status responding switch, ‘0’ for enabling the responding on status registers, and ‘1’ for disabling the responding of status registers bit.After initial, the system can be prepare to output with programming video and audio mode.I T E C o n f i d e n t i a lF o r S T O n l y Chap 3 Power SettingThis chapter describes how to set IT66121 power setting for standby mode or resume mode.Power Down SequenceReg0F[6] ← ‘0’ ; // Enable global clock to set registers. Reg61[4] <- ‘1’ ; // reset AFE Reg62[3] <- ‘0’ ; Reg64[2] <- ‘0’; delay about 100 μsReg61[5] <- ‘1’ ; // power down AFE Reg62[6][2] <- ‘1’ ‘1’ Reg64[6] <- ‘1’Reg05[0] <- ‘1’ // power down PCLK Reg0F[6:3] <- ‘1111’ // power all clocks.After above setting, the IT66121 enter to power down status and only accept I 2C access to resume power.*reference – the Power Down Table in the reference code// { offset, modify bit mask, modify bit value }_CODE RegSetEntry HDMITX_PwrDown_Table[] = { // Enable GRCLK {0x0F , 0x40, 0x00}, // PLL Reset{0x61, 0x10, 0x10}, // DRV_RST {0x62, 0x08, 0x00}, // XP_RESETB {0x64, 0x04, 0x00}, // IP_RESETB {0x01, 0x00, 0x00}, // idle(100);// PLL PwrDn{0x61, 0x20, 0x20}, // PwrDn DRV {0x62, 0x44, 0x44}, // PwrDn XPLL {0x64, 0x40, 0x40}, // PwrDn IPLL// HDMITX PwrDn{0x05, 0x01, 0x01}, // PwrDn PCLK {0x0F , 0x78, 0x78}, // PwrDn GRCLK {0x00, 0x00, 0x00} // End of Table. };Power Resume SequenceReg0F[6:3] <- ‘0111’ // Enable GCLOCK Only Reg05[0] <- ‘0’ // Enable PCLK Reg61[5] <- ‘0’Reg62[6][2] <- ‘0’ ‘0’ Reg64[6] <- ‘0’ Reg61[4] <- ‘0’ Reg62[3] <- ‘1’ Reg64[2] <- ‘1’Reg0F[5:4] <- ‘00’ // Enable Audio FIFO clock and CSC clock , CEC clock need to enable while using. After above setting, the power state is resumed.*Reference Power On Setting table in the reference code_CODE RegSetEntry HDMITX_PwrOn_Table[] = { {0x0F , 0x78, 0x38}, // PwrOn GRCLKI T E C o n f i d e n t i a lF o r S T O n l y {0x05, 0x01, 0x00}, // PwrOn PCLK// PLL PwrOn{0x61, 0x20, 0x00}, // PwrOn DRV {0x62, 0x44, 0x00}, // PwrOn XPLL {0x64, 0x40, 0x00}, // PwrOn IPLL// PLL Reset OFF{0x61, 0x10, 0x00}, // DRV_RST {0x62, 0x08, 0x08}, // XP_RESETB {0x64, 0x04, 0x04}, // IP_RESETB {0x0F , 0x78, 0x08}, // PwrOn IACLK {0x00, 0x00, 0x00} // End of Table. };I T E C o n f i d e n t i a lF o r S T O n l y Chap 4 Handling InterruptIT66121 activates interrupt pin while events defined in interrupt mask registers occurred. The interrupt activating polarity is programmed in reg05[7]. To check interrupt status is also to read back the register value reg0E[7], where ‘1’ identifying interrupt activated and ‘0’ for otherwise.Off Register Name bit DescriptionDefault Value REG_INTPol70: INT active low 1: INT active high 0REG_INTIOMode 6 1: Open-Drain mode 0: Push-Pull Mode 1 05REGPDTxCLk1: TxCLK power down 0: TxCLK activeFig SW HandlerWhen system process detected if an interrupt activated by the INT pin or reg0E[7] of IT66121, the driver should report what event occurred. To define the events of activating interrupt, the bits of events should be cleared to zero in reg09, reg0B, reg0A. For example, to monitor the hot-plug event changing event, reg09[0] should be set to zero, then while hot-plug change event occurring it trigger the interrupt signal and set reg06[0] as ‘1’.To clear the interrupt and interrupt status recorded in reg06, reg07, and reg08, the corresponding bits in reg0C, reg0D, and reg0E[1] should set to ‘1’ then set reg0E[0] with ‘1’ to clear interrupt and status. For example, after processed the hot-plug change event, the status flag and interrupt have to be cleared, then next event can be detected and processed.The definition of these registers is shown as following table:Off Register Namebit DescriptionDefault ValueInterrupt StatusRInt_AudioOvFlwStus 7 R, Reset by REGAudResetReserved6 RDDC_Stus_NoACK 5 RRint_DDCFIFOErr 4 R, Reset byRDDC_Req=0x9 REG_MastersSel=’1’Reserved 3 RInt_DDCBusHang 2 R, Reset by RDDC_Req=0xF REG_MastersSel=’1’06 RInt_RxSENStus 1 R, Reset by REG_RxSENClrI T E C o n f i d e n t i a lF o r S T O n l y RInt_HPDStus 0 R, Reset by REG_HPDClrRInt_Pkt3DStus 7 R, Reset by REG_3DClrRInt_PktISRC1Stus 6 R, Reset by REG_ISRC1Clr RInt_PktACPStus 5 R, Reset by REG_PktACPClr RInt_PktNullStus 4 R, Reset by REG_PktNullClr RInt_PktGenStus 3 R, Reset by REG_PktGenCr RInt_KSVListChkStus 2 R, Reset by REG_KSVListChkClr RInt_AuthDoneStus 1 R, Reset by REG_AuthenDoneClr 07 RInt_AuthFailStus 0 R, Reset by REG_AuthFailClrReserved 7Rint_AudCTSStus 6 R , Reset by Reg_AudCTSClr RInt_VSyncStus 5 R, Reset by REG_VsyncClr RInt_VidStableStus 4 R, Reset by REG_VidStaleClr RInt_PktMpgStus 3 R, Reset by REG_PktMpgClr RInt_PktSPDStus 2 R, Reset by REG_PktSPDClr RInt_PktAudStus 1 R, Reset By REG_PktAudClr 08 RInt_PktAVIStus 0 R, Reset by REG_PktAVIClrInterrupt Mask RegistersREG__AudioOvFlwMask 71 Reserved 6 1REG__DDCNoACKMask 5 1 REG__DDCFIFOErrMask 4 1 Reserved 31REG__DDCBusHangMask 21REG__RxSENMask 1 1 09 REG__HPDMask 0 1 REG__PktAVIMask 71 REG__PktISRCMask 6 1 REG__PktACPMask 5 1 REG__PktNullMask 4 1 REG__PktGenMask 3 1 REG__KSVListChkMask2 1 REG__AuthDoneMask 1 1 0A REG__AuthFailMask 0 1 REG_Pkt3DMask 61 REG_AudCTSMask 5 1 REG__VsyncMask 4 1 REG__VidStableMask 3 1 REG__PktMpgMask2 1 REG__PktSPDMask 1 1 0B REG__PktAudMask 0 1: disable this interrupt. 0: Enable this interrupt 1Interrupt ClearREG__PktACPClr 7 0 REG__PktNullClr 6 0 REG__PktGenClr 5 0 REG__KSVListChkClr 4 0 REG__AuthDoneClr 3 0 REG__AuthFailClr 2 0 REG__RxSENClr 1 0 0C REG__HPDClr 0 1: Clear the interruptREG__VsyncClr 7 0 REG__VidStableClr 6 0 REG__PktMpgClr 5 0 REG__PktSPDClr 4 0 REG__PktAudClr 3 0 REG__PktAVIClr 2 0 REG__Pkt3DClr 1 0 0D REG__PktISRC1Clr 0 1: Clear the interrupt0 System Status RInt_FSMON 7 R. 1: Interrupt is active.RHPDetect 6 RHot Plug Detect:1: plug on. 0: plug offRxSENDetect 5 R TxVidStable 4 R. Video input status:1: stable video input. 0: unstable video input.0E RegCTSIntStep[1:0] 3:2 R/W 11I T E C o n f i d e n t i a lF o r S T O n l y Reg_AudCTSClr 1 Clear AduCTS interrupt 0 Reg_IntActDone_1: Make interrupt clear active. 0: Disable interrupt clear actionWe usually check the following interrupt events: 1. To detect if the HDMI sink connect and active.The hot-plug status responds on reg06[0], it is activated for plug status change, high to low or low to high of the HPD pin of IT66121. When this event occurs, system need to handle the sink detecting or turning the output off depends on the HPD status (reg0E[6]).To enable the event handling, system should set reg09[0] = ‘0’.To clear this status, reg0C[0] should be ‘1’ while reg0E[0] written with ‘1’. The reciever sense status responds on reg06[1], it is activated for TMDS differential terminate change, ON to OFF or OFF to ON. When this event occurs, system need to handle the sink detecting or turning the output off depends on the HPD status (reg0E[5]).To enable the event handling, system should set reg09[1] = ‘0’.To clear this status, reg0C[1] should be ‘1’ while reg0E[0] written with ‘1’. 2. When video enable, to detect the input video stable for setting output analog front end.The video input stable status change event responds on reg08[4], it is actives for input stable changing from stable to unstable or unstable to stable, under reg04[3] = ‘1’. If this event occurs means there has been unstable input and need to fire AFE while input stable again (reg0E[4] = ‘1’).To enable the event handling, reg0B[3] = ‘0’.To clear this status, reg0D[6] should be ‘1’ while reg0E[0] written with ‘1’. 3. DDC status events. When IT66121 issue a request on DDC bus, the bus hang will activate the reg06[2] = ‘1’. This interrupt status can only clear by Abort DDC command.When the DDC fetch FIFO has error, the reg06[4] will be activated and only can be clear by DDC FIFO clear command.4. HDCP status events.When activate the authentication, there are three related events: authenticate done, authenticate fail, and wait for KSV FIFO.Authentication done event responded in reg07[1] is activated when HDCP authentication integration verification Ri == Ri’, for each i include zero when sink is a receiver or does notinclude zero when sink is repeater. This event is enabled by reg0A[1] = ‘0’, and cleared by setting reg0C[3] = ‘1’ when reg0E[0] is written by ‘1’. System usually enable this after the authentication start and disable this after first authentication done.Authentication fail event responded in reg07[0] is activated whenever HDCP authentication fail, include the initial authentication checking fail or any integrating check fail. Whenever this event occurs, the HDCP authentication should be restart. This event is enabled by reg0A[0] = ‘0’, and cleared by setting reg0C[2] when writing reg0E[0] with ‘1’.KSVListCheck event responded in reg07[2] is activated when the sink is an HDCP repeater and the first stage of R0=R0’ is checked, then IT66121 should collect the KSVList, confirm them are correct wht V=V’ after SHA-1 encoding. When system receive this event, it should begin to check the BCaps of HDCP sink and do the following action. The detail will be describe in the chapter about HDCP authentication. This event is enabled by reg0A[2] = ‘0’, and cleared by setting reg0C[4] with ‘1’ when writing reg0E[0] = ‘1’.I T E C o n f i d e n t i a lF o r S T O n l y Chap 5 DDC Command ProgrammingHDMI transmitter communicates with HDMI sink to exchange data for HDCP authentication and to fetch VESA EDID via DDC bus.IT66121 has internal DDC master circuits for fetching sink EDID data and exchanging HDCP data.Instead of software implement by firmware, IT66121 provide DDC command to fetch data via DDC. Driver can use these commands to get EDID and HDCP B status registers via DDC.As described in above figure, there are two DDC masters in IT66121. One is PC-host to fetch data by software controlling, and the other is HDCP core which automatically fetching data via DDC bus.Reg Register Name bit DefinitionDefault Value 10 Reg_MasterSelSwitch HDCP controller or PC host to command the DDC port0: HDCP 1: PC11RDDC_Header[7:0] 7:0 PC DDC request slave address:0x74 when access Rx HDCP 0xA0 when access Rx EDID 12 RDDC_ReqOffSet[7:0] 7:0 Register address13 RDDC_ReqByte[7:0] 7:0 Register R/W byte number 14 RDDC_Segment[7:0] 7:0 EDID segment DDC_SDA7 R. DDC SDA pin status DDC_SCL 6 R. DDC SCL pin status ROM_SDA 5 R. ROM SDA pin status 15 ROM_SCL 4 R. ROM SCL pin statusI T E C o n f i d e n t i a lF o r S T O n l y RDDC_Req[3:0]3:0 PC DDC request command0x0 : Sequential Burst Read 0x3: EDID read0x9: DDC FIFO clear0xA: GenerateSCL clock pulse 0xF: Abort DDC command.16 RDDC_Status[7:0]7654321Read Only.RDDC_Stus_Done ’0’ : DDC is not complete ’1’ : DDC transfer is complete RDDC_Active RDDC_Stus_NoACK ’1’ : DDC has something error RDDC_Stus_WaitBus ’1’ : DDC has something error RDDC_Stus_ArbiLose ’1’ : DDC has something error RDDC_FIFOFull RDDC_FIFOEmpty TxFIFO status VRValid 17 RDDC_ReadFIFO7:0 R.Read DDC FIFO content.There are 32 DDC FIFO, which can read back from the byte. See Fig. 1To select DDC master, software needs to set the reg10[0]. If software wish to fetch data from DDC bus, reg10[0] should be set as ‘1’. reg10[0] should be set as zero that will be described in HDCP chapter. There are numerous commands defined in IT66121 PC-host master, to read EDID data and HDCP sink registers. These commands are described following:Command – DDC Burst Read (0x0)Software can use this command to read data via DDC bus. To issue the burst read command, the following registers should be programmed:z Reg11 – I 2C address. Write 0x74 for reading B registers of HDCP, and write 0xA0 to read EDIDdata. However, to read data of EDID usually use EDID read command (0x03). z Reg12 – the subaddress of I 2C access on DDC bus. For example, the following table is for readingthe registers of HDCP sink while reg11=0x74sub address Meaning0x00 BKSV 0x08 Ri’ 0x0A Pj’ 0x20~0x30 V’.H0 ~ V’.H40x40 BCaps 0x41/0x42 BStatsusBy the way, if the data fetched via DDC with HDCP address, IT66121 will automatically put them into the corresponding registers for HDCP between reg3B ~ reg45 instead of the DDC FIFO. For other data, the read back value are kept in DDC FIFO read back from reg17.z Reg13 – the count to read from DDC bus.z Reg15 – Only bit [3:0] can be write of this registers, and should be 0x00 for burst read.After the reg15 fired, the data are ready when reg16[7] = ‘1’ or DDC fail by reg16[5:3] contains any bit as ‘1’. After the DDC done, software can read the data from corresponding registers (for HDCP) or DDC FIFO.I T E C o n f i d e n t i a lF o r S T O n l y Get BKSVReg10 = 0x01 Reg11 = 0x74 Reg12 = 0x00Reg13 = 0x05 Reg15 = 0x00The five bytes of BKSV are ready in reg3B ~ reg3F when reg16[7] = ‘1’; fail for otherwise.reg namebit description default, value 3B BKSV [7:0] 7:0 Read only. 3C BKSV [15:8] 7:0 Read only. 3D BKSV [23:16] 7:0 Read only. 3E BKSV [31:24] 7:0 Read only. 3FBKSV [39:32]7:0Read only.Get BCapsReg10 = 0x01 Reg11 = 0x74Reg12 = 0x40Reg13 = 0x01 Reg15 = 0x00BCaps is ready in reg43 when reg16[7] = ‘1’; fail for otherwise.reg namebit description default, value 43 Bcaps[7:0] 7 HDMI_Reserved 1 6 HDCP Repeater capability.5KSV FIFO ready. 4FAST . 1: the device supports 400KHz transfers.3 reserved. must be zero. 2 reserved. must be zero.1 1: HDCP 1.1 Features. supportHDCP Enhanced encryption status signaling (EESS), Advance Cipher , andEnhanced Link Verification options.0 1: Fast reauthenticagtion.When set to 1, the receiver is capable of receiving(unencrypted) video signal during the session re-authentication. All HDMI-capable receivers shall be capable of performing the fast re-authentication even if this bit is not set. This bit does not change while the HDCP receiver is active.I T E C o n f i d e n t i a lF o r S T O n l y Get BStatusReg10 = 0x01 Reg11 = 0x74 Reg12 = 0x41 Reg13 = 0x02 Reg15 = 0x00The Bstatus is ready in reg44/reg45 when reg16[7] = ‘1’; fail for otherwise.reg namebit description default, value 45 Bstatus[15:8] 7 reserved 0. 6 reserved 0.5Reserved for future possible HDMI used. 4HDMI_Mode 1: HDMI mode. 0: DVI mode.3 MAX_CASCADE_EXCEEDEDTopology error indicator . 1: more than seven levels of video repeater have been cascaded together .2:0 Three-bit repeater cascade depth.44 Bstatus[7:0] 7 1: more than 127 downstream devices or KSV fifo.6:0 Total number of attached downstream devices.Get KSV FIFO ListReg10 = 0x01 Reg11 = 0x74 Reg12 = 0x43Reg13 = count of attached down stream device × 5. Maximum is 30, minimum is 5, zero value is not acceptable. Reg15 = 0x00The KSV List is ready in reg17 which DDC FIFO when reg16[7] = ‘1’; fail for otherwise.Get V’Reg10 = 0x01 Reg11 = 0x74 Reg12 = 0x20 Reg13 = 0x14 Reg15 = 0x00The 20 bytes of V’ are ready in reg3B ~ reg3F when reg16[7] = ‘1’; fail for otherwise.Reg NameBit DescriptionDefault Value 50 SHASel[2:0]2:0 See SHA_Rd_ByteX registers below 51 SHA_Rd_Byte1[7:0]7:0 V0h[7:0] when SHASel=”000”V1h[7:0] when SHASel=”001” V2h[7:0] when SHASel=”010” V3h[7:0] when SHASel=”011” V4h[7:0] when SHASel=”100” Mi[7:0] when SHASel=”101”52 SHA_Rd_Byte2[7:0]7:0 V0h[15:8] when SHASel=”000”V1h[15:8] when SHASel=”001” V2h[15:8] when SHASel=”010” V3h[15:8] when SHASel=”011” V4h[15:8]when SHASel=”100” Mi[15:8] when SHASel=”101”。
stm32jtag接口上拉电阻的问题(amobbs阿莫电子论坛)
stm32jtag接口上拉电阻的问题(amobbs阿莫电子论坛)
在ST提供的中文版的datasheet上有下面一段话●JNTRST:带上拉的输入
●JTDI:带上拉的输入
●JTMS/SWDIO:带上拉的输入
●JICK/SWCLK:带下拉的输入
●JTDO:浮动输入
软件可以把这些I/O口作为普通的I/O口使用。
注意:JTAG IEEE标准建议对TDI,TMS和nTRST上拉,而对TCK没有特别的建议。
但在STM32F10xxx中,JTCK 引脚带有下拉。
内嵌的上拉和下拉使芯片不再需要外加外部电阻。
“内嵌的上拉和下拉使芯片不再需要外加外部电阻。
”但是我看了“STM3210E-EV AL”的sch后,这不ST有点“心口不一”的感觉吗?如下图。
(原文件名:JTAG.JPG) 当然我买的“红牛板子”以及后来买的“HY-RedBull V3.0”JTAG口都是带上拉电阻的。
我也看了IAR出的开发板,它有的板子JTAG 口有上拉电阻,而有的板子上没有。
(原文件名:IAR-JTAG.JPG) (原文件名:IAR-JTAG22222.JPG) 大家说说自己的看法。
认识IAR开发环境下的.icf文件(amoBBS阿莫电子论坛)
认识IAR开发环境下的.icf文件(amoBBS阿莫电子论坛)展开全文本帖最后由 tmfwt 于 2013-4-23 13:33 编辑IAR 开发环境下使用 .icf文件定义 MCU及其外扩资源的应用范围,这些在项目设计之前必须被确定下来。
所以认识它非常重要。
那么该文件是如何定义的呢?下面通过一个.icf来认识其具体结构:这是一个基于STM32芯片的.icf文件定义结构:/*###ICF### Section handled by ICF editor, don't touch! ****//*-Editor annotation file-*//*IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.x ml" *//********************************-Specials-************************************//*由于STM32内部flash的起始地址为 0x08000000, 所以如下语句定义程序的起始地址,但对于一个应用程序,其起始运行地址不一定是芯片定义的初地址,其可根据实际需要修改,当修改后,必须特殊设计一段引导代码使其能跳到应用程序中来。
由于作者的系统的APP 起始地址为0x08008000 ,所以我的应用程序app start addrress 定义如下:*/define symbol __ICFEDIT_intvec_start__ = 0x08008000;/********************************-Memory Regions-******************************//* 定义内部FLASH地址 */define symbol __ICFEDIT_region_ROM_start__ = 0x08008000;define symbol __ICFEDIT_region_ROM_end__ = 0x0807FFFF;/* 定义内部RAM地址 */define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;define symbol __ICFEDIT_region_RAM_end__ = 0x2000FFFF;/* 定义扩展RAM地址 */define symbol __ICFEDIT_region_EXRAM_start__ = 0x68000000;define symbol __ICFEDIT_region_EXRAM_end__ = 0x68040000;/*********************************-Sizes-***************************************//* 栈和堆大小,一般不需要修改 */define symbol __ICFEDIT_size_cstack__ = 0x400;define symbol __ICFEDIT_size_heap__ = 0x200;/******************************* End of ICF editor section. ###ICF###***********/define memory mem with size = 4G;define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };/*定义内部 RAM ROM, 以及外部RAM 地址范围 */define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to__ICFEDIT_region_RAM_end__];define region EXRAM_region = mem:[from __ICFEDIT_region_EXRAM_start__ to __ICFEDIT_region_EXRAM_end__];/**************************************************************** *****************Define Bootloader address*************************************************************** ******************//* 这段语句相当于一个标志位,使的以ILOADER 声明的代码放在如下空间内,具体声明方式如下:#pragma location = "ILOADER"__root const unsigned char RBL_Code[] = {0x00, 0x04, 0x00, 0x20, 0x85, 0x2C, 0x00, 0x08, 0x9D, 0x2C, 0x00, 0x08, 0x9F, 0x2C, 0x00, 0x08,0xA1, 0x2C, 0x00, 0x08, 0xA3, 0x2C, 0x00, 0x08, 0xA5, 0x2C, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00,0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA7, 0x2C, 0x00, 0x08,};*/define region ILOADER_region = mem:[from 0x08000000 to 0x08003FFF];place in ILOADER_region { readonly section ILOADER };/************************************************************** *****************//* 下列语句定义所定义地址空间内可完成的操作类型*/initialize by copy { readwrite };do not initialize { section .noinit };place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };place in ROM_region { readonly };place in RAM_region { readwrite,block CSTACK, block HEAP };/* 对外部RAM操作类型的声明 */place in EXRAM_region {readwrite data section SDRAM }; /* EXTSRAM_region *//* 定义一个标志位,代表扩展RAM的起始地址,可以再应用函数中直接调用SDRAM_BASE_ADDR 这个变量 */define exported symbol SDRAM_BASE_ADDR = __ICFEDIT_region_EXRAM_start__;/******************************* End of this file ******************************/。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
阿莫电子论坛万联芯城只售原装电子元器件,上万种电子元器件库存,满足您的物料需求,采购电子元器件就上万联芯城,专为客户提供一站式电子元器件配单服务,万联芯城以良心做好良芯,满足客户一切物料需求,节省客户采购成本。
点击进入万联芯城
点击进入万联芯城
阿莫电子论坛是国内知名的电子技术交流社区,拥有大量电子技术工程师用户。
里面相关技术的讨论,知识的发布也非常全面和到位,是广大电子爱好者的必备网站。
相信朋友们对于阿莫电子论坛并不是很陌生,这是一家专业针对于电子元件进行选择的网站。
这里的产品特点尤为突出,让不少的行业在此选购到了更为合适的元器件。
才采购网这里,支持货物的一件代发,而且物流运输速度快,可以在第一时间让产品送货上府。
在进行阿莫电子论坛的选择期间,有需要的朋友可以来这里简单的了解试试看,相信在此款网站的作用之下,会为选择本身提供极大的便利条件。
近年来越来越多的用户,对于采购网十分的认同,毕竟在网上购物不仅节约了大家的时间,而且在价位优势上的突出性,更是为企业的成本开销做到开支上的节省,提供了更好的方向选择。
与此同时在售后的部分,会对于买家负责任,在规定的时间内一旦出现质量问题,作为商城而言将会无理由退换货。
因此在阿莫电子论坛这里,满足了更多用户的需要。
同时网站在设计过程中,还会针对于商城近期的实际情况,制定相对应的活动。
例如满百包邮,满百减钱或者是赠与优惠券等等,通过这样的方式,帮助用户在选购中变得更加划算。
阿莫电子论坛是专业进行电子元件销售的平台网站,如果您近期萌生了采买的计划,在采购过程中希望帮助自己选择到更为合适的元件作为基础,不妨来此仔细的了解一番,帮助采购本身变得更加轻松便利很多。
消费的方式有很多种,真正在关注消费行为的时候大家关注的还是速度和产品的质量,并且在整体的价格上也是一个很重要的因素,我们在关注阿莫电子论坛的时候就是需要看看哪些是不错的,因为现在很多的产品在整体的质量和价格上上都是会有很大的差别,并且在网上价格会相对便宜一些。
要是可以选择到专业的网站相对来说还是比较划算的,这是因为网上销售的产品没有店铺的租金,在成本上可以降低很多,这样真正在阿莫电子论坛中就是可以选择到合适的产品,价格还便宜。
有些要是急用的产品也都是可以选择顺丰快递的,毕竟快递在整个市场中的发展也是比较快的。
既然是网购肯定是需要考虑产品运输的过程中,专业的阿莫电子论坛都是有自身运输的物流,这样在实际的销售过程中就可以销售的更好,我们希望大家都可以合理的选择,高品质的元器件在科通芯城都是有销售的,产品整体的情况也都是比较合理的,希望大家可以合理的选
择。
专业的电子元器件网站就是为了可以提供专业的产品,阿莫电子论坛大家一定要识别,不能选择一些杂乱的网站,到时候产品不能很好的使用,并且还会有可能带来其他的一些影响,从这一点上来看,确实是需要多多关注的,也需要看看哪些元器件是比较好的。