Compare commits

..

10 Commits

Author SHA1 Message Date
Matthias b32b2bd87b updates
git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@138 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-03-17 12:45:50 +00:00
Matthias 841ad4e7b0 git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@137 9fe90eed-be63-e94b-8204-d34ff4c2ff93 2009-02-09 13:00:38 +00:00
Matthias 3ca8eaa258 added running.png
git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@136 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-01-26 15:07:45 +00:00
Matthias 9b3a8ec833 FERTIG
git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@135 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-01-15 23:14:25 +00:00
Matthias 87cfac93cb CALL ME BOSS
git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@134 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-01-15 15:32:16 +00:00
Matthias 0b07146da8 ES IST VERFUEGBAR!!!
git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@133 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-01-15 14:46:11 +00:00
Matthias b769685b66 edited bold-words in dictionary.odt
updated code files

git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@132 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-01-15 11:59:37 +00:00
Matthias f468e09499 Added Altium Project files
git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@131 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-01-15 10:28:29 +00:00
Matthias e92b94654b FINISHED, last view from claudi needed
git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@130 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-01-15 10:10:04 +00:00
Matthias f51c9498dd now finished
git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@129 9fe90eed-be63-e94b-8204-d34ff4c2ff93
2009-01-14 22:37:35 +00:00
107 changed files with 5476 additions and 384 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

+75
View File
@@ -0,0 +1,75 @@
#!/bin/sh
# Hint: "ori" = ORIginal; "rb" = ReadBack; "res" = RESult; "err" = ERRor
# Make shure that mounting Directory exists
if [ ! -d /mnt/usb1 ]
then
mkdir /mnt/usb1
fi
# Make shure that result Directory exists
if [ ! -d /test/result ]
then
mkdir /test/result
fi
# Make shure that result file of Test does NOT exists
if [ -s /test/result/usb1.res ]
then
rm /test/result/usb1.res
fi
# Make shure that error file of Test does NOT exists
if [ -s /test/result/usb1.err ]
then
rm /test/result/usb1.err
fi
# Mount USB-Stick to /mnt/usb1
mount /dev/sda1 /mnt/usb1 2>> /test/result/usb1.err
# Copy Testfile from Test Directory to USB-Stick
cp /test/testfile /mnt/usb1 2>> /test/result/usb1.err
# Compare original Testfile and copied Testfile on USB-Stick
# Print compare results to /test/result/usb1.res
# Print compare errors to /test/result/usb1.err
if [ ! -e /mnt/usb1/testfile ]
then
echo "TESTFILE DOES NOT EXIST" >> /test/result/usb1.err
fi
diff /test/testfile /mnt/usb1/testfile 1>> /test/result/usb1.res
2>> /test/result/usb1.err
# Delete Testfile on USB-Stick
rm /mnt/usb1/testfile 2>> /test/result/usb1.err
# Unmount USB-Stick
umount /mnt/usb1 2>> /test/result/usb1.err
# Delete Folder usb1 in /mnt
rmdir /mnt/usb1 2>> /test/result/usb1.err
# Display content of /test/result/usb1.res
echo -e "\n\rContent of usb1.res"
cat /test/result/usb1.res
# Display content of /test/result/usb1.err
echo -e "\n\rContent of usb1.err"
cat /test/result/usb1.err
# If comparison returned neither results nor errors, the copying and comparision was successful
if [ ! -s /test/result/usb1.res -a ! -s /test/result/usb1.err ]
then
# Test was successful
echo -e "\n\rUSB1 TEST-PASSED"
echo "USB1 TEST-PASSED" >> /test/result/usb1.res
else
# Test failed
echo -e "\n\rUSB1 TEST-FAIL"
echo "USB1 TEST-FAILED" >> /test/result/usb1.res
fi
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
+25
View File
@@ -0,0 +1,25 @@
*************************************************************
FileName = stimuliBoard.GBR
AutoAperture = True
*************************************************************
Generating : Top Overlay
File : stimuliBoard.GTO
Adding Layer : Top Overlay
Used DCodes :
D10
D11
D12
D13
D14
D15
D16
D17
D18
D19
D20
D21
*************************************************************
+18
View File
@@ -0,0 +1,18 @@
DRC Rules Export File for PCB: P:\QUA_2475\Tester\HW\PCB\stimuliBoard.PcbDoc
RuleKind=Width|RuleName=C71|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=GND|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=C72|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=D50|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=VIO|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=V24|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=VIN|Scope=Board|Minimum=31.50
RuleKind=Width|RuleName=VCC_ETH|Scope=Board|Minimum=7.87
RuleKind=ShortCircuit|RuleName=ShortCircuit|Scope=Board|Allowed=0
RuleKind=SolderMaskExpansion|RuleName=SolderMaskExpansion|Scope=Board|Minimum=4.00
RuleKind=Width|RuleName=VCC|Scope=Board|Minimum=7.87
RuleKind=Clearance|RuleName=Clearance|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=Signal|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=VCC_ANA|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=VCC_SD|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=VIN_DIGI|Scope=Board|Minimum=7.87
RuleKind=Width|RuleName=F2_1|Scope=Board|Minimum=7.87
@@ -0,0 +1,11 @@
[PCBViewState.Preferences]
Current2D3DViewState=2D
PCBViewPort=Lx=3893684|Hx=92943684|Ly=24587895|Hy=84074739
2DConfigType=.config_2dsimple
2DConfiguration=RECORD=Board|CFGALL.CONFIGURATIONKIND=1|CFGALL.CONFIGURATIONDESC=Altium%20Standard%202D|CFG2D.PRIMDRAWMODE=00000000020000020000000|CFG2D.LAYEROPACITY=1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0|CFG2D.TOGGLELAYERS=1111111111111111111111111111111110000011111111111111110000000000000000000011101111|CFG2D.WORKSPACECOLALPHA0=1.0|CFG2D.WORKSPACECOLALPHA1=1.0|CFG2D.WORKSPACECOLALPHA2=1.0|CFG2D.WORKSPACECOLALPHA3=1.0|CFG2D.WORKSPACECOLALPHA4=1.0|CFG2D.WORKSPACECOLALPHA5=1.0|CFG2D.WORKSPACECOLALPHA6=1.0|CFG2D.MECHLAYERINSINGLELAYERMODE=0000000000000000|CFG2D.MECHLAYERLINKEDTOSHEET=0000000000000000|CFG2D.CURRENTLAYER=BOTTOM|CFG2D.DISPLAYSPECIALSTRINGS=FALSE|CFG2D.SHOWTESTPOINTS=FALSE|CFG2D.SHOWORIGINMARKER=TRUE|CFG2D.SHOWSTATUSINFO=TRUE|CFG2D.SHOWPADNETS=TRUE|CFG2D.SHOWPADNUMBERS=TRUE|CFG2D.SHOWVIANETS=TRUE|CFG2D.USETRANSPARENTLAYERS=FALSE|CFG2D.PLANEDRAWMODE=2|CFG2D.DISPLAYNETNAMESONTRACKS=1|CFG2D.FROMTOSDISPLAYMODE=0|CFG2D.PADTYPESDISPLAYMODE=0|CFG2D.SINGLELAYERMODESTATE=1|CFG2D.ORIGINMARKERCOLOR=16777215|CFG2D.SHOWCOMPONENTREFPOINT=FALSE|CFG2D.COMPONENTREFPOINTCOLOR=16777215|CFG2D.POSITIVETOPSOLDERMASK=FALSE|CFG2D.POSITIVEBOTTOMSOLDERMASK=FALSE|CFG2D.TOPPOSITIVESOLDERMASKALPHA=0.500000|CFG2D.BOTTOMPOSITIVESOLDERMASKALPHA=0.500000
2DConfigFullFileName=(Not Saved)
3DConfigType=.config_3d
3DConfiguration=
3DConfigFullFileName=(Not Saved)
3DCameraPosition=|LookAt.x=0|LookAt.y=0|LookAt.z=0|EyeRotation.x=0|EyeRotation.y=0|EyeRotation.z=0|EyeRotation.w=1|ZoomMult=1.38686131386861E-5|ViewSize.x=377|ViewSize.y=343
ViewState_BoardFlipped=False
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,11 @@
[PCBViewState.Preferences]
Current2D3DViewState=2D
PCBViewPort=Lx=495789837|Hx=504032450|Ly=497312568|Hy=504388305
2DConfigType=.config_2dsimple
2DConfiguration=RECORD=Board|CFGALL.CONFIGURATIONKIND=1|CFGALL.CONFIGURATIONDESC=Altium%20Standard%202D|CFG2D.PRIMDRAWMODE=00000000000000000000000|CFG2D.LAYEROPACITY=1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0;1.0|CFG2D.TOGGLELAYERS=1000000000000000000000000000000111111100000000000000001100000000000000001111101111|CFG2D.WORKSPACECOLALPHA0=1.0|CFG2D.WORKSPACECOLALPHA1=1.0|CFG2D.WORKSPACECOLALPHA2=1.0|CFG2D.WORKSPACECOLALPHA3=1.0|CFG2D.WORKSPACECOLALPHA4=1.0|CFG2D.WORKSPACECOLALPHA5=1.0|CFG2D.WORKSPACECOLALPHA6=1.0|CFG2D.MECHLAYERINSINGLELAYERMODE=0000000000000000|CFG2D.MECHLAYERLINKEDTOSHEET=0000000000000000|CFG2D.CURRENTLAYER=TOP|CFG2D.DISPLAYSPECIALSTRINGS=FALSE|CFG2D.SHOWTESTPOINTS=FALSE|CFG2D.SHOWORIGINMARKER=TRUE|CFG2D.SHOWSTATUSINFO=TRUE|CFG2D.SHOWPADNETS=TRUE|CFG2D.SHOWPADNUMBERS=TRUE|CFG2D.SHOWVIANETS=TRUE|CFG2D.USETRANSPARENTLAYERS=FALSE|CFG2D.PLANEDRAWMODE=2|CFG2D.DISPLAYNETNAMESONTRACKS=1|CFG2D.FROMTOSDISPLAYMODE=0|CFG2D.PADTYPESDISPLAYMODE=0|CFG2D.SINGLELAYERMODESTATE=3|CFG2D.ORIGINMARKERCOLOR=16777215|CFG2D.SHOWCOMPONENTREFPOINT=FALSE|CFG2D.COMPONENTREFPOINTCOLOR=16777215|CFG2D.POSITIVETOPSOLDERMASK=FALSE|CFG2D.POSITIVEBOTTOMSOLDERMASK=FALSE|CFG2D.TOPPOSITIVESOLDERMASKALPHA=0.500000|CFG2D.BOTTOMPOSITIVESOLDERMASKALPHA=0.500000
2DConfigFullFileName=C:\Documents and Settings\mmi\Application Data\AltiumDesignerSummer08\ViewConfigurations\Altium Standard 2D.config_2dsimple
3DConfigType=.config_3d
3DConfiguration=
3DConfigFullFileName=(Not Saved)
3DCameraPosition=|LookAt.x=0|LookAt.y=0|LookAt.z=0|EyeRotation.x=0|EyeRotation.y=0|EyeRotation.z=0|EyeRotation.w=1|ZoomMult=0.000120835474151524|ViewSize.x=377|ViewSize.y=343
ViewState_BoardFlipped=False
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
+102
View File
@@ -0,0 +1,102 @@
Field=Designator~String~Designator~100|Field=Value~String~Value~100|Field=Manufacturer~String~Manufacturer~100|Field=Description~String~Description~100|Field=Manufacturer Code~String~Manufacturer Code~100|Field=Farnell Order Code~String~Farnell Order Code~100|Field=Footprint~String~Footprint~100|Field=Quantity~Integer~Quantity~100|ReportField=ProjectFileName~stimuliBoard.PrjPCB|ReportField=ProjectFullPath~P:\QUA_2475\Tester\HW\SCH\stimuliBoard.PrjPCB|ReportField=Title~Bill of Materials For Project [stimuliBoard.PrjPCB] (No PCB Document Selected)|ReportField=TotalQuantity~531|ReportField=ReportTime~14:37:29|ReportField=ReportDate~28-10-2008|ReportField=ReportDateTime~28-10-2008 14:37:29|ReportField=OutputName~Bill of Materials|ReportField=OutputType~BOM_PartType|ReportField=GeneratorName~BOM|ReportField=GeneratorDescription~Bill of Materials|ReportField=VariantName~None|ReportField=SheetTotal~19|ReportField=Address1~|ReportField=Address2~|ReportField=Address3~|ReportField=Address4~|ReportField=ApprovedBy~|ReportField=Author~|ReportField=CheckedBy~GSC|ReportField=CompanyName~|ReportField=ConfigurationParameters~|ReportField=ConfiguratorName~|ReportField=CurrentDate~28-10-2008|ReportField=CurrentTime~14:37:22|ReportField=Date~|ReportField=DocumentFullPathAndName~P:\QUA_2475\Tester\HW\SCH\TOP.SchDoc|ReportField=DocumentName~TOP.SchDoc|ReportField=DocumentNumber~1|ReportField=DrawnBy~MMi|ReportField=Engineer~|ReportField=ImagePath~|ReportField=ModifiedDate~28-10-2008|ReportField=Organization~|ReportField=Revision~A|ReportField=Rule~|ReportField=SheetNumber~1|ReportField=Time~|ReportField=Title~TOP_SHEET|ReportField=DataSourceFileName~stimuliBoard.PrjPCB|ReportField=DataSourceFullPath~P:\QUA_2475\Tester\HW\SCH\stimuliBoard.PrjPCB
C1|100uF_Hi-Cap||Capacitor 1210|||C1210|1
C2, C7, C15, C47, C50, C51, C52, C53, C54, C56, C57, C58, C59, C60, C61, C62, C63, C64, C65, C66, C67, C75, C77, C82, C83, C86, C87, C88, C89, C90, C91, C92, C102, C109, C116|100nF|||||0603|35
C3, C4, C5, C6, C16, C17, C18, C19, C20, C21, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34, C35, C36, C37, C38, C39, C40, C41, C42, C43, C44, C45, C46, C72, C101, C118, C119, C120, C121, C122, C123, C124, C125, C126, C127, C128, C129, C130, C131, C132, C133|10nF|||||0603|52
C8, C117|10uF_Hi-Cap||Capacitor 1210|||C1210|2
C9, C10, C11, C12, C13, C14, C22, C93, C94, C95, C96, C97, C98, C99, C100, C103, C104, C105, C106, C107, C108, C110, C111, C112, C113, C114, C115|1nF|||||0603|27
C48, C49, C55|10uF/6.3V|Panasonic|SMD ELKO 1210|||C1210|3
C68, C69|12pF|||||0603|2
C70, C71|7pF|||||0603|2
C73, C76|1uF_50V||Capacitor 1210|||C1210|2
C74, C79|470uF/16V|Panasonic|SMD ELKO|||ELKO|2
C78|220uF/35V|Panasonic|SMD ELKO|||ELKO|1
C80|1uF/16V|Panasonic|SMD ELKO 1210|||C1210|1
C81, C84, C85|22uF_16V||Capacitor 1210|||C1210|3
D1, D2, D56, D57, D58, D59, D60, D61|||Schottky Barrier Diode Common Anode en Cathode|BAT54S||SOT23|8
D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, D13, D14, D47, D48, D55|||Red LED 0603|||0603|15
D15|||Silicon Switching Diode for High-Speed Switching|BAS16||SOT-23|1
D16, D18, D20, D22, D24, D26, D28, D30, D32, D34, D36, D38, D40, D42, D44, D45, D46, D49, D62, D64, D66, D68|||Green LED 0603|||0603|22
D17, D19, D21, D23, D25, D27, D29, D31, D33, D35, D37, D39, D41, D43, D63, D65, D67, D69|||General-purpose Schottky diodes quadruple 2-series|BAS40XY||SOT363|18
D50||||||S3A|1
D51||ST|Voltage suppression diode|SMBJ33CA-TR|9886265|DO214|1
D52|||Surface Mount Scottky Power Rectifier|MBRS340T3G|9557377|CASE 403_03|1
D53, D54|||Silicon Switching Diode for High-Speed Switching|BAS16||SOT-23|2
F1, F2||Bourns|MF-R Series - PTC Resettable Fuses. 1A@60C|MF-R135-0-99|9350470|53|2
J1||Harting|Receptacle Assembly, 9 Position, Right Angle|09 65 161 6712|1097056|DSUB1.385-2H9|1
J2||Multicomp|SD/MMC Card connector|SDAMB-01215BT00|9186140|SDAMB-012|1
L1, L2, L3, L4, L5, L6|||Inductor|BLMTG601TN1||L0603|6
L7, L8, L9, L10, L11, L12, L13, L14|||Inductor|BLM31PG601SN1L||1206|8
L15|||Inductor|FB0805||L0603|1
L16|||Inductor|FB0B05||L0603|1
L17|22uH|Tyco|Surface Mount Power Inductor|3631B220ML|1174026|TYCO_3631_B|1
L18||TDK|ACM3225-601-2P-T001||9621377|CHOKE|1
L19|||Inductor|1uH_SIMID||C1210|1
L20|||BLM31PG121SN1L Inductor 1210|BLM31PG121SN1L||C1210|1
L21, L22, L23, L24|||Inductor|BLM18TG601N||L0603|4
L25, L26, L27, L28|||Inductor|BLM18TG601N1||L0603|4
L29|||Inductor|BLM18TG601TN1||L0603|1
P1|||1x18 Pin row, Grid 2.54|||HEAD_18|1
P2, P3, P10, P12||Phoenix|Header pitch: 5.08 mm, no. of positions: 9|MSTBV/9-G-5.08||HEAD_PH_9|4
P4, P5, P17||Phoenix|Header pitch: 5.08 mm, no. of positions: 8|MSTBV/8-G-5.08||HEAD_PH_8|3
P6|||1x16 Pin row, Grid 2,54|||HEAD_16|1
P7, P9, P19|||1x2Pin row, Grid 2.54, Header, 2-Pin|||HDR1X2|3
P8|||Header, 3-Pin|||HDR1X3|1
P11, P13, P18||Phoenix|Header pitch: 5.08 mm, no. of positions: 4|MSTBV/4-G-5.08||HEAD_PH_4|3
P14||Wuerth|CONNECTOR WE-LAN INTEGRATED RJ-45|7499011001|1636374|RJ45_MHRJJ88NFRAS|1
P15|||2x10 Pin row, Grid 2.54|||HEAD_2x10|1
P16||Phoenix|Header pitch: 5.08 mm, no. of positions: 2|MSTBV/2-G-5.08||HEAD_PH_2|1
P20, P21||MH Connectors|SOCKET, RJ45|MHRJJ88NFRAS|3938384|RJ45_MHRJJ88NFRAS|2
Q1, Q2, Q12, Q13, Q14, Q15, Q16, Q17||Fairchild|N-Channel 1.8 Vgs Specified PowerTrench MOSFET|FDN327N||SuperSOT-3|8
Q3||Aker|50 MHz Oscillator|S23305-50.000-X|1538936|CRYSTAL_50MHz|1
Q4, Q5|||NPN General Purpose Amplifier|||SOT23|2
Q6|||CRYSTAL, CX5032GB12000|||CX5032|1
Q7||Citizen|32.768kHz tunning fork crystal|CM519 32.768KDZF-UT|1457194|CM519|1
Q8, Q9, Q11|||NPN General Purpose Amplifier|BC817-40||TO-92A|3
Q10|||MOSFET, FDN304P|FDN304P||SuperSOT-3|1
R1, R5, R163, R167, R171, R175, R179, R183|30K||Resistor|||0603|8
R2, R6, R164, R168, R172, R176|470/0.5W||Resistor 1210|||C1210|6
R3, R7, R165, R169, R173, R177, R181, R185|20K||Resistor|||0603|8
R4, R8, R166, R170, R174, R178, R182, R186|2K2||Resistor|||0603|8
R9, R10, R11, R19, R27, R35, R43, R51, R59, R63, R77, R78, R79, R80, R81, R82, R83, R84, R119, R122, R134, R135, R137, R138, R139, R140, R141, R142, R143, R144, R145, R146, R153|10K||Resistor|||0603|33
R12, R13, R16, R17, R20, R21, R24, R25, R28, R29, R32, R33, R36, R37, R40, R41, R44, R45, R48, R49, R52, R53, R56, R57|130k||Resistor|||0603|24
R14, R15, R22, R23, R30, R31, R38, R39, R46, R47, R54, R55|169||Resistor|||0603|12
R18, R26, R34, R42, R50, R58|15k||Resistor|||0603|6
R60, R61, R130|4K7||Resistor|||0603|3
R62|120||Resistor|||0603|1
R64, R65, R66, R67, R68, R69, R70, R71, R73, R74, R75, R76|9K1||Resistor|||0603|12
R72|0||Resistor|||0603|1
R85, R86, R87, R89, R91, R93, R95, R97, R99, R101, R103, R105, R107, R109, R111, R113, R123, R147, R148, R187, R189, R191, R193|1K||Resistor|||0603|23
R88, R90, R92, R94, R96, R98, R100, R102, R104, R106, R108, R110, R112, R114, R188, R190, R192, R194|5K6||Resistor 1206|||1206|18
R115, R116, R117, R118|49.9/1%||Resistor|||0603|4
R120|4.99K/1%||Resistor|||0603|1
R121|1.5K/1%||Resistor|||0603|1
R124, R125, R126, R127|220||Resistor|||0603|4
R128, R160|330||Resistor|||0603|2
R129|100K||Resistor|||0603|1
R131, R132|680||Resistor|||0603|2
R133, R149, R150, R151, R152, R154, R155, R156, R157, R158, R159|33K||Resistor|||0603|11
R136, R161|3K3||Resistor|||0603|2
R162|2K||Resistor|||0603|1
R180, R184|460/0.5W||Resistor 1210|||C1210|2
S1|||Switch|||SPST-2|1
T1, T2, T3, T4, T5, T6||NXP|NPN, BCX55-16|BCX55-16|1081279|SOT89|6
U1, U4, U7, U10, U27, U28||Maxim|QUAD SPST Analog Switch|MAX4533CAP+|1379970|SSOP20|6
U2||Microchip|2.7V 8-Channel 12-Bit A/D Converters with SPI|MCP3208-CI/SL|1084270|SOIC16|1
U3, U12||Microchip|4.096V Voltage Reference|MCP1541(T)-I/TT|1084310|SOT23|2
U5, U6||Microchip|Rail-to-Rail Input/Output, 10 MHz Op Amps|MCP6024-I/SL|129247|SOIC16|2
U8, U9, U11||Microchip|12-Bit DAC with SPI Interface|MCP4922(T)-E/ST||TSSOP14|3
U13, U15, U17, U19, U21, U23||National Semiconductors|Low Power Dual Operational Amplifiers|LM358A||SO8|6
U14, U16, U18, U20, U22, U24||Maxim|DUAL SPST ANALOG_SWITCHES, MAX4700CAE|MAX4700CAE||TSSOP16|6
U25||Microchip|High Speed Can Transceiver|MCP2551||SOIC150-8_N|1
U26||Infineon|Smart Power High-Side-Switch Eight Channels|ITS4880R|1440818|PowerSO36|1
U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U54, U55, U56, U57||Agilent|DC Input Phototransistor Optocoupler SMD Mini-Flat|||SO8_special|18
U43||Micrel|Transceiver PHY Layer 3.3V|KSZ8721BL|1517240|LQFP-48_L|1
U44||NXP|ARM7 16/32-Bit Microcontroller, 512KB Flash, 58KB RAM, 4 Channel CAN, 144-Lead LQFP|LPC 2378 144||SOT486-1_N|1
U45||Microchip|512 Kbit Serial SPI bus EEPROM with high speed clock|25LC512-I/SN|1556153|SOIC8|1
U46||Texas Instruments|Octal dual supply translating transceiver; 3-state|SN74LVC4245ADBR|1470927|TSSOP24|1
U47||National Semiconductors|High Efficiency 5A Step-Down Volttage Regulator|LM2678S-5.0|1469215|TS7B|1
U48||National Semiconductors|5A Low Dropout Fast Response Regulators|LMS1585AIS-3.3||TO-263|1
U49||National Semiconductor|ADJ Voltage Regulator||9779272|SOT223|1
U50||Microchip|Voltage Supervisory Circuit|MCP120T-475I/TT||SOT23|1
U51||ST|3 to 5.5V, Low power, up to 400Kbps RS-232 Drivers|ST3232CTR||TSSOP16|1
U52, U53||Texas Instruments|3.3-V RS-485 TRANSCEIVERS|SN75HVD12D(G4)|1470461|SOIC8|2
File diff suppressed because one or more lines are too long
@@ -0,0 +1,50 @@
Record=SheetSymbol|SourceDocument=ANA_IN.SchDoc|Designator=U_ANA_IN_FE1|SchDesignator=U_ANA_IN_FE1|FileName=ANA_IN_FE.SchDoc|SymbolType=Normal|RawFileName=ANA_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_IN.SchDoc|Designator=U_ANA_IN_FE2|SchDesignator=U_ANA_IN_FE2|FileName=ANA_IN_FE_B.SchDoc|SymbolType=Normal|RawFileName=ANA_IN_FE_B.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_IN.SchDoc|Designator=U_ANA_IN_FE3|SchDesignator=U_ANA_IN_FE3|FileName=ANA_IN_FE_C.SchDoc|SymbolType=Normal|RawFileName=ANA_IN_FE_C.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_IN.SchDoc|Designator=U_ANA_IN_FE4|SchDesignator=U_ANA_IN_FE4|FileName=ANA_IN_FE_D.SchDoc|SymbolType=Normal|RawFileName=ANA_IN_FE_D.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_IN.SchDoc|Designator=U_ANA_IN_FE5|SchDesignator=U_ANA_IN_FE5|FileName=ANA_IN_FE.SchDoc|SymbolType=Normal|RawFileName=ANA_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_IN.SchDoc|Designator=U_ANA_IN_FE6|SchDesignator=U_ANA_IN_FE6|FileName=ANA_IN_FE_B.SchDoc|SymbolType=Normal|RawFileName=ANA_IN_FE_B.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_IN.SchDoc|Designator=U_ANA_IN_FE7|SchDesignator=U_ANA_IN_FE7|FileName=ANA_IN_FE_C.SchDoc|SymbolType=Normal|RawFileName=ANA_IN_FE_C.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_IN.SchDoc|Designator=U_ANA_IN_FE8|SchDesignator=U_ANA_IN_FE8|FileName=ANA_IN_FE_D.SchDoc|SymbolType=Normal|RawFileName=ANA_IN_FE_D.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_OUT.SchDoc|Designator=U_ANA_OUT_BE|SchDesignator=U_ANA_OUT_BE|FileName=ANA_OUT_BE.SchDoc|SymbolType=Normal|RawFileName=ANA_OUT_BE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_OUT.SchDoc|Designator=U_ANA_OUT_BE|SchDesignator=U_ANA_OUT_BE|FileName=ANA_OUT_BE.SchDoc|SymbolType=Normal|RawFileName=ANA_OUT_BE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_OUT.SchDoc|Designator=U_ANA_OUT_BE|SchDesignator=U_ANA_OUT_BE|FileName=ANA_OUT_BE.SchDoc|SymbolType=Normal|RawFileName=ANA_OUT_BE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_OUT.SchDoc|Designator=U_ANA_OUT_BE|SchDesignator=U_ANA_OUT_BE|FileName=ANA_OUT_BE.SchDoc|SymbolType=Normal|RawFileName=ANA_OUT_BE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_OUT.SchDoc|Designator=U_ANA_OUT_BE|SchDesignator=U_ANA_OUT_BE|FileName=ANA_OUT_BE.SchDoc|SymbolType=Normal|RawFileName=ANA_OUT_BE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=ANA_OUT.SchDoc|Designator=U_ANA_OUT_BE|SchDesignator=U_ANA_OUT_BE|FileName=ANA_OUT_BE.SchDoc|SymbolType=Normal|RawFileName=ANA_OUT_BE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE1|SchDesignator=U_DIGI_IN_FE1|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE2|SchDesignator=U_DIGI_IN_FE2|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE3|SchDesignator=U_DIGI_IN_FE3|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE4|SchDesignator=U_DIGI_IN_FE4|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE5|SchDesignator=U_DIGI_IN_FE5|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE6|SchDesignator=U_DIGI_IN_FE6|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE7|SchDesignator=U_DIGI_IN_FE7|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE8|SchDesignator=U_DIGI_IN_FE8|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE9|SchDesignator=U_DIGI_IN_FE9|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE10|SchDesignator=U_DIGI_IN_FE10|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE11|SchDesignator=U_DIGI_IN_FE11|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=DIGI_IN.SchDoc|Designator=U_DIGI_IN_FE12|SchDesignator=U_DIGI_IN_FE12|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=RLY_IN.SchDoc|Designator=U_DIGI_IN_FE13|SchDesignator=U_DIGI_IN_FE13|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=RLY_IN.SchDoc|Designator=U_DIGI_IN_FE14|SchDesignator=U_DIGI_IN_FE14|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=RLY_IN.SchDoc|Designator=U_DIGI_IN_FE15|SchDesignator=U_DIGI_IN_FE15|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=RLY_IN.SchDoc|Designator=U_DIGI_IN_FE16|SchDesignator=U_DIGI_IN_FE16|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=RLY_IN_EB.SchDoc|Designator=U_DIGI_IN_FE17|SchDesignator=U_DIGI_IN_FE17|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=RLY_IN_EB.SchDoc|Designator=U_DIGI_IN_FE18|SchDesignator=U_DIGI_IN_FE18|FileName=DIGI_IN_FE.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN_FE.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_ANA_IN|SchDesignator=U_ANA_IN|FileName=ANA_IN.SchDoc|SymbolType=Normal|RawFileName=ANA_IN.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_ANA_OUT|SchDesignator=U_ANA_OUT|FileName=ANA_OUT.SchDoc|SymbolType=Normal|RawFileName=ANA_OUT.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_CAN|SchDesignator=U_CAN|FileName=CAN.SchDoc|SymbolType=Normal|RawFileName=CAN.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_DIG_OUT|SchDesignator=U_DIG_OUT|FileName=DIG_OUT.SchDoc|SymbolType=Normal|RawFileName=DIG_OUT.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_DIGI_IN|SchDesignator=U_DIGI_IN|FileName=DIGI_IN.SchDoc|SymbolType=Normal|RawFileName=DIGI_IN.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_Ethernet|SchDesignator=U_Ethernet|FileName=Ethernet.SchDoc|SymbolType=Normal|RawFileName=Ethernet.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_LPC2378_IO|SchDesignator=U_LPC2378_IO|FileName=LPC2378_IO.SchDoc|SymbolType=Normal|RawFileName=LPC2378_IO.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_LPC2378_MISC|SchDesignator=U_LPC2378_MISC|FileName=LPC2378_MISC.SchDoc|SymbolType=Normal|RawFileName=LPC2378_MISC.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_LPC2378_Power|SchDesignator=U_LPC2378_Power|FileName=LPC2378_Power.SchDoc|SymbolType=Normal|RawFileName=LPC2378_Power.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_LPC2378_SYS|SchDesignator=U_LPC2378_SYS|FileName=LPC2378_SYS.SchDoc|SymbolType=Normal|RawFileName=LPC2378_SYS.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_Power|SchDesignator=U_Power|FileName=Power.SchDoc|SymbolType=Normal|RawFileName=Power.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_RLY_IN|SchDesignator=U_RLY_IN|FileName=RLY_IN.SchDoc|SymbolType=Normal|RawFileName=RLY_IN.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_RLY_IN_EB|SchDesignator=U_RLY_IN_EB|FileName=RLY_IN_EB.SchDoc|SymbolType=Normal|RawFileName=RLY_IN_EB.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_RS232|SchDesignator=U_RS232|FileName=RS232.SchDoc|SymbolType=Normal|RawFileName=RS232.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_RS485|SchDesignator=U_RS485|FileName=RS485.SchDoc|SymbolType=Normal|RawFileName=RS485.SchDoc|ObjectKind=Sheet Symbol
Record=SheetSymbol|SourceDocument=TOP.SchDoc|Designator=U_SD_CARD|SchDesignator=U_SD_CARD|FileName=SD_CARD.SchDoc|SymbolType=Normal|RawFileName=SD_CARD.SchDoc|ObjectKind=Sheet Symbol
Record=TopLevelDocument|FileName=TOP.SchDoc
Record=HARD_PROCESSOR_COMPONENT|BaseComponentDesignator=U23|DocumentName=LPC2378_IO.SchDoc|LibraryReference=LPC2378FBD144|SubProjectPath= |Configuration= |Description=ARM7 16/32-Bit Microcontroller, 512KB Flash, 58KB RAM, 4 Channel CAN, 144-Lead LQFP|SubPartUniqueId1=VXUTYTAN|SubPartDocPath1=LPC2378_IO.SchDoc|SubPartUniqueId2=ACTQIEXB|SubPartDocPath2=LPC2378_SYS.SchDoc|SubPartUniqueId3=DGSALGJH|SubPartDocPath3=LPC2378_SYS.SchDoc|SubPartUniqueId4=KWCDNYKX|SubPartDocPath4=LPC2378_Power.SchDoc|SubPartUniqueId5=NJDFKTYJ|SubPartDocPath5=LPC2378_SYS.SchDoc
+97
View File
@@ -0,0 +1,97 @@
Field=Designator~String~Designator~100|Field=Value~String~Value~100|Field=Manufacturer~String~Manufacturer~100|Field=Description~String~Description~100|Field=Manufacturer Code~String~Manufacturer Code~100|Field=Farnell Order Code~String~Farnell Order Code~100|Field=Footprint~String~Footprint~100|Field=Quantity~Integer~Quantity~100|ReportField=ProjectFileName~stimuliBoard.PrjPCB|ReportField=ProjectFullPath~P:\QUA_2475\Tester\HW\SCH\stimuliBoard.PrjPCB|ReportField=Title~BOM_MLA08_274_RA For Project [stimuliBoard.PrjPCB] (No PCB Document Selected)|ReportField=TotalQuantity~531|ReportField=ReportTime~15:44:18|ReportField=ReportDate~8-12-2008|ReportField=ReportDateTime~8-12-2008 15:44:18|ReportField=OutputName~BOM_MLA08_274_RA|ReportField=OutputType~BOM_PartType|ReportField=GeneratorName~BOM|ReportField=GeneratorDescription~Bill of Materials|ReportField=VariantName~None|ReportField=SheetTotal~19|ReportField=Address1~|ReportField=Address2~|ReportField=Address3~|ReportField=Address4~|ReportField=ApprovedBy~|ReportField=Author~|ReportField=CheckedBy~GSC|ReportField=CompanyName~|ReportField=ConfigurationParameters~|ReportField=ConfiguratorName~|ReportField=CurrentDate~8-12-2008|ReportField=CurrentTime~15:43:55|ReportField=Date~|ReportField=DocumentFullPathAndName~P:\QUA_2475\Tester\HW\SCH\TOP.SchDoc|ReportField=DocumentName~TOP.SchDoc|ReportField=DocumentNumber~1|ReportField=DrawnBy~MMi|ReportField=Engineer~|ReportField=ImagePath~|ReportField=ModifiedDate~5-11-2008|ReportField=Organization~|ReportField=Revision~A|ReportField=Rule~|ReportField=SheetNumber~1|ReportField=Time~|ReportField=Title~TOP_SHEET|ReportField=DataSourceFileName~stimuliBoard.PrjPCB|ReportField=DataSourceFullPath~P:\QUA_2475\Tester\HW\SCH\stimuliBoard.PrjPCB
C1, C8, C117|10uF_Hi-Cap|muRata|Capacitor 1210|GRM31CR70J106KA01L||C1210|3
C2, C7, C15, C47, C50, C51, C52, C53, C54, C56, C57, C58, C59, C60, C61, C62, C63, C64, C65, C66, C67, C75, C77, C82, C83, C86, C87, C88, C89, C90, C91, C92, C102, C109, C116|100nF|||||0603|35
C3, C4, C5, C6, C16, C17, C18, C19, C20, C21, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34, C35, C36, C37, C38, C39, C40, C41, C42, C43, C44, C45, C46, C72, C101, C118, C119, C120, C121, C122, C123, C124, C125, C126, C127, C128, C129, C130, C131, C132, C133|10nF|||||0603|52
C9, C10, C11, C12, C13, C14, C22, C93, C94, C95, C96, C97, C98, C99, C100, C103, C104, C105, C106, C107, C108, C110, C111, C112, C113, C114, C115|1nF|||||0603|27
C48, C49, C55, C80|10uF/6.3V|KEMET|SMD ELKO 1210|T491B106K006AT|1457434|C1210|4
C68, C69|12pF|||||0603|2
C70, C71|7pF|||||0603|2
C73, C76|1uF_50V|muRata|Capacitor 1210|GRM32RR71H105KA01L||C1210|2
C74, C79|470uF/16V|Panasonic|SMD ELKO|||ELKO|2
C78|220uF/35V|Panasonic|SMD ELKO|EEEFK1V221P||ELKO|1
C81, C84, C85|22uF_16V|muRata|Capacitor 1210|GRM32ER61C226KE20L||C1210|3
D1, D2, D56, D57, D58, D59, D60, D61|||Schottky Barrier Diode Common Anode en Cathode|BAT54S||SOT23|8
D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, D13, D14, D47, D48, D55|||Red LED 0603|||0603|15
D15|||Silicon Switching Diode for High-Speed Switching|BAS16||SOT-23|1
D16, D18, D20, D22, D24, D26, D28, D30, D32, D34, D36, D38, D40, D42, D44, D45, D46, D49, D62, D64, D66, D68|||Green LED 0603|||0603|22
D17, D19, D21, D23, D25, D27, D29, D31, D33, D35, D37, D39, D41, D43, D63, D65, D67, D69|||General-purpose Schottky diodes quadruple 2-series|BAS40XY||SOT363|18
D50||||||S3A|1
D51||ST|Voltage suppression diode|SMBJ33CA-TR|9886265|DO214|1
D52|||Surface Mount Scottky Power Rectifier|MBRS340T3G|9557377|CASE 403_03|1
D53, D54|||Silicon Switching Diode for High-Speed Switching|BAS16||SOT-23|2
F1, F2||Bourns|MF-R Series - PTC Resettable Fuses. 1A@60C|MF-R135-0-99|9350470|53|2
J1||Harting|Receptacle Assembly, 9 Position, Right Angle|09 65 161 6712|1097056|DSUB1.385-2H9|1
J2||Multicomp|SD/MMC Card connector|SDAMB-01215BT00|9186140|SDAMB-012|1
L1, L2, L3, L4, L5, L6, L29|||Inductor|BLM18TG601TN1, BLMTG601TN1||L0603|7
L7, L8, L9, L10, L11, L12, L13, L14|||Inductor|BLM31PG601SN1L||1206|8
L15|||Inductor|FB0805||L0603|1
L16|||Inductor|FB0B05||L0603|1
L17|22uH|Tyco|Surface Mount Power Inductor|3631B220ML|1174026|TYCO_3631_B|1
L18||TDK|ACM3225-601-2P-T001||9621377|CHOKE|1
L19||EPCOS|Inductor|B82422-T1102||C1210|1
L20|||BLM31PG121SN1L Inductor 1210|BLM31PG121SN1L||C1210|1
L21, L22, L23, L24, L25, L26, L27, L28|||Inductor|BLM18TG601N1||L0603|8
P1|||1x18 Pin row, Grid 2.54|||HEAD_18|1
P2, P3, P10, P12||Phoenix|Header pitch: 5.08 mm, no. of positions: 9|MSTBV/9-G-5.08||HEAD_PH_9|4
P4, P5, P17||Phoenix|Header pitch: 5.08 mm, no. of positions: 8|MSTBV/8-G-5.08||HEAD_PH_8|3
P6|||1x16 Pin row, Grid 2,54|||HEAD_16|1
P7, P9, P19|||1x2Pin row, Grid 2.54, Header, 2-Pin|||HDR1X2|3
P8|||Header, 3-Pin|||HDR1X3|1
P11, P13, P18||Phoenix|Header pitch: 5.08 mm, no. of positions: 4|MSTBV/4-G-5.08||HEAD_PH_4|3
P14||Wuerth|CONNECTOR WE-LAN INTEGRATED RJ-45|7499011001|1636374|RJ45_MHRJJ88NFRAS|1
P15|||2x10 Pin row, Grid 2.54|||HEAD_2x10|1
P16||Phoenix|Header pitch: 5.08 mm, no. of positions: 2|MSTBV/2-G-5.08||HEAD_PH_2|1
P20, P21||MH Connectors|SOCKET, RJ45|MHRJJ88NFRAS|3938384|RJ45_MHRJJ88NFRAS|2
Q1, Q2, Q12, Q13, Q14, Q15, Q16, Q17||Fairchild|N-Channel 1.8 Vgs Specified PowerTrench MOSFET|FDN327N||SuperSOT-3|8
Q3||Aker|50 MHz Oscillator|S23305-50.000-X|1538936|CRYSTAL_50MHz|1
Q4, Q5|||BC817-40|||SOT23|2
Q6||AVX|CRYSTAL, CX5032GB12000|CX5032GB12000H0PESZZ||CX5032|1
Q7||Citizen|32.768kHz tunning fork crystal|CM519 32.768KDZF-UT|1457194|CM519|1
Q8, Q9, Q11|||NPN General Purpose Amplifier|BC817-40||TO-92A|3
Q10|||MOSFET, FDN304P|FDN304P||SuperSOT-3|1
R1, R5, R163, R167, R171, R175, R179, R183|30K||Resistor|||0603|8
R2, R6, R164, R168, R172, R176, R180, R184|470/0.5W|PHYCOMP|Resistor 1210|232276164||C1210|8
R3, R7, R165, R169, R173, R177, R181, R185|20K||Resistor|||0603|8
R4, R8, R166, R170, R174, R178, R182, R186|2K2||Resistor|||0603|8
R9, R10, R11, R19, R27, R35, R43, R51, R59, R63, R77, R78, R79, R80, R81, R82, R83, R84, R119, R122, R134, R135, R137, R138, R139, R140, R141, R142, R143, R144, R145, R146, R153|10K||Resistor|||0603|33
R12, R13, R16, R17, R20, R21, R24, R25, R28, R29, R32, R33, R36, R37, R40, R41, R44, R45, R48, R49, R52, R53, R56, R57|130k||Resistor|||0603|24
R14, R15, R22, R23, R30, R31, R38, R39, R46, R47, R54, R55|169||Resistor|||0603|12
R18, R26, R34, R42, R50, R58|15k||Resistor|||0603|6
R60, R61, R130|4K7||Resistor|||0603|3
R62|120||Resistor|||0603|1
R64, R65, R66, R67, R68, R69, R70, R71, R73, R74, R75, R76|9K1||Resistor|||0603|12
R72|0||Resistor|||0603|1
R85, R86, R87, R89, R91, R93, R95, R97, R99, R101, R103, R105, R107, R109, R111, R113, R123, R147, R148, R187, R189, R191, R193|1K||Resistor|||0603|23
R88, R90, R92, R94, R96, R98, R100, R102, R104, R106, R108, R110, R112, R114, R188, R190, R192, R194|5K6||Resistor 1206|||1206|18
R115, R116, R117, R118|49.9/1%||Resistor|||0603|4
R120|4.99K/1%||Resistor|||0603|1
R121|1.5K/1%||Resistor|||0603|1
R124, R125, R126, R127|220||Resistor|||0603|4
R128, R160|330||Resistor|||0603|2
R129|100K||Resistor|||0603|1
R131, R132|680||Resistor|||0603|2
R133, R149, R150, R151, R152, R154, R155, R156, R157, R158, R159|33K||Resistor|||0603|11
R136, R161|3K3||Resistor|||0603|2
R162|2K||Resistor|||0603|1
S1||Omron|Switch|B3FS-1002||SPST-2|1
T1, T2, T3, T4, T5, T6||NXP|NPN, BCX55-16|BCX55-16|1081279|SOT89|6
U1, U4, U7, U10, U27, U28||Maxim|QUAD SPST Analog Switch|MAX4533CAP+|1379970|SSOP20|6
U2||Microchip|2.7V 8-Channel 12-Bit A/D Converters with SPI|MCP3208-CI/SL|1084270|SOIC16|1
U3, U12||Microchip|4.096V Voltage Reference|MCP1541(T)-I/TT|1084310|SOT23|2
U5, U6||Microchip|Rail-to-Rail Input/Output, 10 MHz Op Amps|MCP6024-I/SL|129247|SOIC16|2
U8, U9, U11||Microchip|12-Bit DAC with SPI Interface|MCP4922(T)-E/ST||TSSOP14|3
U13, U15, U17, U19, U21, U23||National Semiconductors|Low Power Dual Operational Amplifiers|LM358A||SO8|6
U14, U16, U18, U20, U22, U24||Maxim|DUAL SPST ANALOG_SWITCHES, MAX4700CAE|MAX4700CAE||TSSOP16|6
U25||Microchip|High Speed Can Transceiver|MCP2551||SOIC150-8_N|1
U26||Infineon|Smart Power High-Side-Switch Eight Channels|ITS4880R|1440818|PowerSO36|1
U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U54, U55, U56, U57||Agilent|DC Input Phototransistor Optocoupler SMD Mini-Flat|HCPL-181-000E||SO8_special|18
U43||Micrel|Transceiver PHY Layer 3.3V|KSZ8721BL|1517240|LQFP-48_L|1
U44||NXP|ARM7 16/32-Bit Microcontroller, 512KB Flash, 58KB RAM, 4 Channel CAN, 144-Lead LQFP|LPC 2378 144||SOT486-1_N|1
U45||Microchip|512 Kbit Serial SPI bus EEPROM with high speed clock|25LC512-I/SN|1556153|SOIC8|1
U46||Texas Instruments|Octal dual supply translating transceiver; 3-state|SN74LVC4245ADBR|1470927|TSSOP24|1
U47||National Semiconductors|High Efficiency 5A Step-Down Volttage Regulator|LM2678S-5.0|1469215|TS7B|1
U48||National Semiconductors|5A Low Dropout Fast Response Regulators|LMS1585AIS-3.3||TO-263|1
U49||National Semiconductor|ADJ Voltage Regulator|LM317AEMP|9779272|SOT223|1
U50||Microchip|Voltage Supervisory Circuit|MCP120T-475I/TT||SOT23|1
U51||ST|3 to 5.5V, Low power, up to 400Kbps RS-232 Drivers|ST3232CTR||TSSOP16|1
U52, U53||Texas Instruments|3.3-V RS-485 TRANSCEIVERS|SN75HVD12D(G4)|1470461|SOIC8|2
@@ -65,6 +65,7 @@
*/ */
void LEDPauseFlash(t_led_ids LEDnum, UINT8 counts, INT16 delay_length); void LEDPauseFlash(t_led_ids LEDnum, UINT8 counts, INT16 delay_length);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: LEDResult * Function: LEDResult
* *
@@ -77,6 +78,7 @@ void LEDPauseFlash(t_led_ids LEDnum, UINT8 counts, INT16 delay_length);
*/ */
void LEDResult (BOOLEAN TestResult); void LEDResult (BOOLEAN TestResult);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: LEDResultDIO * Function: LEDResultDIO
* *
@@ -90,6 +92,7 @@ void LEDResult (BOOLEAN TestResult);
*/ */
void LEDResultDIO (BOOLEAN TestResult, UINT16 dioNo); void LEDResultDIO (BOOLEAN TestResult, UINT16 dioNo);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: LEDToggleForever * Function: LEDToggleForever
* *
@@ -102,6 +105,7 @@ void LEDResultDIO (BOOLEAN TestResult, UINT16 dioNo);
*/ */
void LEDToggleForever( void); void LEDToggleForever( void);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: LEDToggle * Function: LEDToggle
* *
@@ -114,6 +118,7 @@ void LEDToggleForever( void);
*/ */
void LEDToggle( UINT16 cnts); void LEDToggle( UINT16 cnts);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: LEDShowStatus * Function: LEDShowStatus
* *
@@ -126,6 +131,7 @@ void LEDToggle( UINT16 cnts);
*/ */
void LEDShowStatus (UINT16 status); void LEDShowStatus (UINT16 status);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Functions: gLEDToggle / rLEDToggle * Functions: gLEDToggle / rLEDToggle
* *
@@ -140,6 +146,7 @@ void LEDShowStatus (UINT16 status);
void gLEDToggle (UINT16 time); void gLEDToggle (UINT16 time);
void rLEDToggle (UINT16 time); void rLEDToggle (UINT16 time);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: dioToggle * Function: dioToggle
* *
@@ -153,6 +160,7 @@ void rLEDToggle (UINT16 time);
*/ */
void dioToggle (UINT16 LEDnr); void dioToggle (UINT16 LEDnr);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: dioToggleNC * Function: dioToggleNC
* *
@@ -166,6 +174,7 @@ void dioToggle (UINT16 LEDnr);
*/ */
void dioToggleNC (UINT16 LEDnr); void dioToggleNC (UINT16 LEDnr);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: dio2x4 * Function: dio2x4
* *
@@ -180,6 +189,7 @@ void dioToggleNC (UINT16 LEDnr);
*/ */
void dio2x4 (UINT32 ToggleTime); void dio2x4 (UINT32 ToggleTime);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: dioClean * Function: dioClean
* *
@@ -192,6 +202,7 @@ void dio2x4 (UINT32 ToggleTime);
*/ */
void dioClean (void); void dioClean (void);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: dioCapture * Function: dioCapture
* *
@@ -204,6 +215,7 @@ void dioClean (void);
*/ */
UINT8 dioCapture (void); UINT8 dioCapture (void);
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function: dioResume * Function: dioResume
* *
@@ -1,5 +1,5 @@
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* protocolfunctions.c - v0.1 (c) 2008 Micro-key bv * protocolfunctions.c (c) 2008 Micro-key bv
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Micro-key bv * Micro-key bv
* Industrieweg 28, 9804 TG Noordhorn * Industrieweg 28, 9804 TG Noordhorn
@@ -54,8 +54,6 @@
* Global variable definitions * Global variable definitions
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
extern BOOLEAN auto_testResult; extern BOOLEAN auto_testResult;
extern UINT32 UINT32result; extern UINT32 UINT32result;
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
@@ -157,6 +157,18 @@ void slaveRestartFunction (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
void UINT32ResultFunction (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void UINT32ResultFunction (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
/* ---------------------------------------------------------------------------
* Function: receiveRemoteAttachedFunctions
*
* Function to receive and print the name of a attached remote function
*
* Parameters: UINT8 requestNr - number of the request
* UINT8 nrOfResult - Number of Attached Results
* UIN32 *results - Attached Results
*
* Return: void
* ---------------------------------------------------------------------------
*/
void receiveRemoteAttachedFunctions (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void receiveRemoteAttachedFunctions (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
#endif /* __PROTOCOLTEST_H__ */ #endif /* __PROTOCOLTEST_H__ */
+1 -1
View File
@@ -37,7 +37,7 @@
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Description: MAIN File to Application Project * Description: MAIN File to Application Project
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, Jul 07, 2008, MMi * Version(s): 0.1, Jul 08, 2008, MMi
* *
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
+2 -1
View File
@@ -96,7 +96,7 @@ void CallMenu(void)
UINT8 buffer; UINT8 buffer;
BOOLEAN receive; BOOLEAN receive;
char separator[] = " "; char separator[] = " "; /* Seperator list for strtok() */
char *commandt; char *commandt;
char *pcmd; char *pcmd;
char *arg1t; char *arg1t;
@@ -126,6 +126,7 @@ void CallMenu(void)
do /* do-while loop for String input */ do /* do-while loop for String input */
{ {
/* Read from serial port input buffer */
if ((receive = serGet(MenuPort, &buffer) == TRUE)) if ((receive = serGet(MenuPort, &buffer) == TRUE))
{ {
if (buffer == '\t') if (buffer == '\t')
@@ -111,7 +111,7 @@ const char *command_table[NUMBER_OF_COMMANDS] =
"volout" "volout"
}; };
/* Make Sure that at least the first letter of this is in alphabetical order*/
const fpointer command_pointer[NUMBER_OF_COMMANDS] = const fpointer command_pointer[NUMBER_OF_COMMANDS] =
{ {
m_aio, m_aio,
+11 -1
View File
@@ -38,7 +38,7 @@
* Type definitions. * Type definitions.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
typedef void (*fpointer)(void); typedef void (*fpointer)(void); /* Function pointer for menu */
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Variable declarations. * Variable declarations.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
@@ -49,6 +49,16 @@ typedef void (*fpointer)(void);
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
/* ---------------------------------------------------------------------------
* Function: menuInit
*
* Initialises the menu structure and calculates the offset table
*
* Parameters: void
*
* Return: void
* ---------------------------------------------------------------------------
*/
void menuInit (void); void menuInit (void);
#endif /*MENUARGS_H_*/ #endif /*MENUARGS_H_*/
@@ -10,7 +10,7 @@
* Email: support@microkey.nl * Email: support@microkey.nl
* Web: www.microkey.nl * Web: www.microkey.nl
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Description: * Description: All called, menu-specific functions are defined here
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, Nov 14, 2008, MMi * Version(s): 0.1, Nov 14, 2008, MMi
* Creation. * Creation.
@@ -118,7 +118,7 @@ void m_run(void)
{ {
dioClean(); dioClean();
diotasksdelete(); diotasksdelete();
// \MARK Automatic Test not necessary on Olimex Board // \MARK Automatic Test not necessary on Olimex Board
#if ((PINSET_TESTER == 1) || (PINSET_TESTER == 2)) #if ((PINSET_TESTER == 1) || (PINSET_TESTER == 2))
// automaticdesigntest(); // \TODO NO AUTOMATIC TEST AVAILABLE // automaticdesigntest(); // \TODO NO AUTOMATIC TEST AVAILABLE
#else #else
@@ -329,7 +329,8 @@ void m_curout(void)
sendString(MenuPort, TRUE, importantMessage, "Wrote Output to: ", sendString(MenuPort, TRUE, importantMessage, "Wrote Output to: ",
ItoDStr(dacReadBack(arg1, arg2)), " uA"); ItoDStr(dacReadBack(arg1, arg2)), " uA");
} }
} else }
else
{ {
sendString(MenuPort, TRUE, importantMessage, sendString(MenuPort, TRUE, importantMessage,
"ARGUMENT ERROR! Did nothing... ", Dummy, Dummy); "ARGUMENT ERROR! Did nothing... ", Dummy, Dummy);
@@ -64,20 +64,123 @@ xSemaphoreHandle remoteAnalogueSemaphore;
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
/* ---------------------------------------------------------------------------
* Function: remoteAioInit
*
* Initialisation of the remote analogue driver; takes the analogue semaphore
*
* Parameter: void
*
* Return: void
* ---------------------------------------------------------------------------
*/
void remoteAioInit (void); void remoteAioInit (void);
/* ---------------------------------------------------------------------------
* Function: remoteAioWrite
*
* Writes to one remote analogue output
*
* Parameter: UINT8 device - Number of the device to write one
UINT8 channel - Channelnumber that should be affected
INT32 value - Value that should be written
*
* Return: RESULT - Write result
* ---------------------------------------------------------------------------
*/
RESULT remoteAioWrite (UINT8 device, UINT8 channel, INT32 value); RESULT remoteAioWrite (UINT8 device, UINT8 channel, INT32 value);
/* ---------------------------------------------------------------------------
* Function: remoteAioWriteAll
*
* Writes to all remote analogue outputs
*
* Parameter: UINT8 device - Number of the device to write on
t_boardtype_analogue board - type of board (MB or EB)
INT32 value - Value that should be written
*
* Return: RESULT - Write result
* ---------------------------------------------------------------------------
*/
RESULT remoteAioWriteAll (UINT8 device, t_boardtype_analogue board, BOOLEAN value); RESULT remoteAioWriteAll (UINT8 device, t_boardtype_analogue board, BOOLEAN value);
/* ---------------------------------------------------------------------------
* Function: remoteAioread
*
* Reads on one remote analogue outputs
*
* Parameter: UINT8 device - Number of the device to write on
UINT8 channel - Number of affected channel
*
* Return: UINT32 - Read value
* ---------------------------------------------------------------------------
*/
UINT32 remoteAioRead (UINT8 device, UINT8 channel); UINT32 remoteAioRead (UINT8 device, UINT8 channel);
/* ---------------------------------------------------------------------------
* Function: remoteAioread
*
* Reads on one remote analogue outputs
*
* Parameter: UINT8 device - Number of the device to write on
t_boardtype_analogue board - type of board (MB or EB)
*
* Return: void
* ---------------------------------------------------------------------------
*/
void remoteAioReadAll (UINT8 device, t_boardtype_analogue board); void remoteAioReadAll (UINT8 device, t_boardtype_analogue board);
/* ---------------------------------------------------------------------------
* Function: remoteAnalogueSemaphoreRelease
*
* Is called as a result from the remote device to release the analogue
* Semaphore. This call is the last statement within the remote procedure.
* It assures that the complete function is executed before the local
* software resumes working.
*
* Parameters: UINT8 requestNr - Number of the momentary request
* UINT8 nrOfResults - Indicates how many values are returned
* UINT32 *results - Result-Array of "NrOfResults"-size
*
* Return: void
* ---------------------------------------------------------------------------
*/
void remoteAnalogueSemaphoreRelease (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void remoteAnalogueSemaphoreRelease (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
/* ---------------------------------------------------------------------------
* Function: analogueReadResult
*
* Is called as result function; receives the remotely read value
*
* Parameters: UINT8 requestNr - Number of the momentary request
* UINT8 nrOfResults - Indicates how many values are returned
* UINT32 *results - Result-Array of "NrOfResults"-size
*
* Return: void
* ---------------------------------------------------------------------------
*/
void analogueReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void analogueReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
/* ---------------------------------------------------------------------------
* Function: analogueReadAllResult
*
* Is called as result function; receives the remotely read values
*
* Parameters: UINT8 requestNr - Number of the momentary request
* UINT8 nrOfResults - Indicates how many values are returned
* UINT32 *results - Result-Array of "NrOfResults"-size
*
* Return: void
* ---------------------------------------------------------------------------
*/
void analogueReadAllResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void analogueReadAllResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
@@ -49,6 +49,7 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
BOOLEAN remoteDigitalInitialised = FALSE; BOOLEAN remoteDigitalInitialised = FALSE;
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Local variable definitions * Local variable definitions
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
@@ -72,6 +73,8 @@ void remoteDioInit (void)
NewLine, "Initialise digital remote buffers", Dummy); NewLine, "Initialise digital remote buffers", Dummy);
sendString (SerOutPort, FALSE, importantMessage, sendString (SerOutPort, FALSE, importantMessage,
"\tInputs...", Dummy, Dummy); "\tInputs...", Dummy, Dummy);
/* reset stat array of remote digital inputs */
for (loopcnt = 0; loopcnt < NUMBER_OF_TOTAL_DI; loopcnt++) for (loopcnt = 0; loopcnt < NUMBER_OF_TOTAL_DI; loopcnt++)
{ {
remoteDigitalInputs[loopcnt] = FALSE; remoteDigitalInputs[loopcnt] = FALSE;
@@ -81,6 +84,8 @@ void remoteDioInit (void)
sendString (SerOutPort, FALSE, importantMessage, sendString (SerOutPort, FALSE, importantMessage,
"\tOutputs...", Dummy, Dummy); "\tOutputs...", Dummy, Dummy);
/* Reset stat array of remote digital outputs */
for (loopcnt = 0; loopcnt < NUMBER_OF_TOTAL_DO; loopcnt++) for (loopcnt = 0; loopcnt < NUMBER_OF_TOTAL_DO; loopcnt++)
{ {
remoteDigitalOutputs[loopcnt] = FALSE; remoteDigitalOutputs[loopcnt] = FALSE;
@@ -88,10 +93,11 @@ void remoteDioInit (void)
sendString (SerOutPort, FALSE, importantMessage, sendString (SerOutPort, FALSE, importantMessage,
"Done", Dummy, Dummy); "Done", Dummy, Dummy);
/* Create and afterwards take the remote_digital semaphore */
vSemaphoreCreateBinary (remoteDigitalSemaphore); vSemaphoreCreateBinary (remoteDigitalSemaphore);
sendString (SerOutPort, TRUE, importantMessage, sendString (SerOutPort, TRUE, importantMessage,
"Take digital semaphore... ", Dummy, Dummy); "Take digital semaphore... ", Dummy, Dummy);
/* Print out if semaphore-taking was successful */
if (xSemaphoreTake(remoteDigitalSemaphore, 0) == pdTRUE) if (xSemaphoreTake(remoteDigitalSemaphore, 0) == pdTRUE)
{ {
sendString (SerOutPort, FALSE, importantMessage, sendString (SerOutPort, FALSE, importantMessage,
@@ -103,12 +109,13 @@ void remoteDioInit (void)
"Failed", Dummy, Dummy); "Failed", Dummy, Dummy);
} }
/* Set all mainboard and extensionboard outputs to LOW */
sendString(SerOutPort, TRUE, importantMessage, sendString(SerOutPort, TRUE, importantMessage,
"reset remote digital outputs...", Dummy, Dummy); "reset remote digital outputs...", Dummy, Dummy);
set_mb = remoteDioWriteAll (remoteDeviceNumber, digital_mb, FALSE); set_mb = remoteDioWriteAll (remoteDeviceNumber, digital_mb, FALSE);
set_eb = remoteDioWriteAll (remoteDeviceNumber, digital_eb, FALSE); set_eb = remoteDioWriteAll (remoteDeviceNumber, digital_eb, FALSE);
/* Print out if setting of remote outputs was successful */
if ((set_mb == OK) && (set_eb == OK)) if ((set_mb == OK) && (set_eb == OK))
{ {
sendString(SerOutPort, FALSE, importantMessage, "Done", Dummy, Dummy); sendString(SerOutPort, FALSE, importantMessage, "Done", Dummy, Dummy);
@@ -131,27 +138,32 @@ RESULT remoteDioWrite (UINT8 device, UINT8 channel, BOOLEAN value)
/* Remote digital driver is not initialised */ /* Remote digital driver is not initialised */
sendString (SerOutPort, TRUE, importantMessage, sendString (SerOutPort, TRUE, importantMessage,
"\t\tdigital not intialised", Dummy, Dummy); "\t\tdigital not intialised", Dummy, Dummy);
return (ERROR); return (ERROR); /* Return error result */
} }
/* Copy channelnumber and value to array that will be sent */
sendArray[0] = (INT32) channel; sendArray[0] = (INT32) channel;
sendArray[1] = (INT32) value; sendArray[1] = (INT32) value;
/* Call DigitalWrite on remote device */
bpSendCallRpc(handleBus1, device, 20, 2, sendArray); bpSendCallRpc(handleBus1, device, 20, 2, sendArray);
/* Take digital Semaphore with predefined timeout */
if (xSemaphoreTake(remoteDigitalSemaphore, 3000) != pdTRUE) if (xSemaphoreTake(remoteDigitalSemaphore, 3000) != pdTRUE)
{ {
sendString (SerOutPort, TRUE, importantMessage, /* Semaphore was able to be taken, return error result */
s_tab, "digital write was not successful", Dummy); sendString (SerOutPort, TRUE, importantMessage,
s_tab, "digital write was not successful", Dummy);
returnValue = ERROR;
} returnValue = ERROR;
else }
{ else
remoteDigitalOutputs[channel] = value; {
/* Semaphore was taken successfully, return OK result */
returnValue = OK; remoteDigitalOutputs[channel] = value;
}
returnValue = OK;
}
return (returnValue); return (returnValue);
} }
@@ -165,6 +177,7 @@ RESULT remoteDioWriteAll(UINT8 device, t_boardtype_digital board, BOOLEAN value)
RESULT returnValue; RESULT returnValue;
if (remoteDigitalInitialised == FALSE) if (remoteDigitalInitialised == FALSE)
{ {
/* Remote digital driver is not initialised */ /* Remote digital driver is not initialised */
@@ -173,13 +186,17 @@ RESULT remoteDioWriteAll(UINT8 device, t_boardtype_digital board, BOOLEAN value)
return (ERROR); return (ERROR);
} }
/* Copy boardtype and value to array that will be sent */
sendArray[0] = (INT32)board; sendArray[0] = (INT32)board;
sendArray[1] = (INT32)value; sendArray[1] = (INT32)value;
/* Call DigitalWriteAll on remote device */
bpSendCallRpc(handleBus1, device, 21, 2, sendArray); bpSendCallRpc(handleBus1, device, 21, 2, sendArray);
/* Take digital Semaphore with predefined timeout */
if (xSemaphoreTake(remoteDigitalSemaphore, 3000) != pdTRUE) if (xSemaphoreTake(remoteDigitalSemaphore, 3000) != pdTRUE)
{ {
/* Semaphore was able to be taken, return error result */
sendString(SerOutPort, TRUE, importantMessage, s_tab, sendString(SerOutPort, TRUE, importantMessage, s_tab,
"digital write was not successful", Dummy); "digital write was not successful", Dummy);
@@ -187,30 +204,34 @@ RESULT remoteDioWriteAll(UINT8 device, t_boardtype_digital board, BOOLEAN value)
} }
else else
{ {
/* Semaphore was taken successfully */
/* Switch depending on the board type */
switch (board) switch (board)
{ {
case digital_mb: case digital_mb:
/* Set loop values for mainboard */
loopcnt = 0; loopcnt = 0;
loopend = NUMBER_OF_DO_MB; loopend = NUMBER_OF_DO_MB;
break; break;
case digital_eb: case digital_eb:
/* Set loop values for extensionboard */
loopcnt = NUMBER_OF_DO_MB; loopcnt = NUMBER_OF_DO_MB;
loopend = NUMBER_OF_TOTAL_DO; loopend = NUMBER_OF_TOTAL_DO;
break; break;
} }
/* Write all values in local stat array to given value in a loop */
for (loopcnt; loopcnt < loopend; loopcnt++) for (loopcnt; loopcnt < loopend; loopcnt++)
{ {
remoteDigitalOutputs[loopcnt] = value; remoteDigitalOutputs[loopcnt] = value;
// \TODO IS THIS LOOP WORKING?? // \TODO IS THIS LOOP WORKING??
} }
returnValue = OK; returnValue = OK; /* Set result to OK */
} }
return (returnValue); return (returnValue); /* Return result */
} }
@@ -229,19 +250,27 @@ BOOLEAN remoteDioRead (UINT8 device, INT32 channel)
return (ERROR); return (ERROR);
} }
/* Call DigitalRead on remote device */
bpSendCallRpc(handleBus1, device, 22, 1, channelArray); bpSendCallRpc(handleBus1, device, 22, 1, channelArray);
/* Take digital Semaphore with predefined timeout */
if (xSemaphoreTake(remoteDigitalSemaphore, 3000) != pdTRUE) if (xSemaphoreTake(remoteDigitalSemaphore, 3000) != pdTRUE)
{ {
/* Semaphore was able to be takenprint out error message */
sendString (SerOutPort, TRUE, importantMessage, sendString (SerOutPort, TRUE, importantMessage,
s_tab, "digital read did not receive a readback", Dummy); s_tab, "digital read did not receive a readback", Dummy);
} }
else else
{ {
/* The actual value is received in the resultfunction
* "digitalReadResult" (see below in this file). This function
* handles the received value to the global variable
* "remoteDioReadresult", which is read below
*/
remoteDigitalInputs[channel] = remoteDioReadResult; remoteDigitalInputs[channel] = remoteDioReadResult;
} }
return (remoteDioReadResult); return (remoteDioReadResult); /* Return result */
} }
@@ -259,9 +288,13 @@ void remoteDioReadAll (UINT8 device, t_boardtype_digital board)
return; return;
} }
/* Call DigitalReadAll on remote device */
bpSendCallRpc(handleBus1, device, 23, 1, boardArray); bpSendCallRpc(handleBus1, device, 23, 1, boardArray);
/* Take digital Semaphore with predefined timeout */
if (xSemaphoreTake(remoteDigitalSemaphore, 3000) != pdTRUE) if (xSemaphoreTake(remoteDigitalSemaphore, 3000) != pdTRUE)
{ {
/* Semaphore was able to be takenprint out error message */
sendString (SerOutPort, TRUE, importantMessage, sendString (SerOutPort, TRUE, importantMessage,
s_tab, "digital read all did not receive a readback", Dummy); s_tab, "digital read all did not receive a readback", Dummy);
} }
@@ -276,18 +309,18 @@ void remoteDioReadAll (UINT8 device, t_boardtype_digital board)
void remoteDigitalSemaphoreRelease (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results) void remoteDigitalSemaphoreRelease (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results)
{ {
if (remoteDigitalInitialised == FALSE) if (remoteDigitalInitialised == FALSE)
{ {
/* Remote digital driver is not initialised */ /* Remote digital driver is not initialised, semaphore unaccessible */
sendString (SerOutPort, TRUE, importantMessage, sendString (SerOutPort, TRUE, importantMessage,
"\t\tdigital not intialised", Dummy, Dummy); "\t\tdigital not intialised", Dummy, Dummy);
return; return; /* Return without action */
} }
xSemaphoreGive (remoteDigitalSemaphore); xSemaphoreGive (remoteDigitalSemaphore); /* Release digital Semaphore */
} }
void digitalReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results) void digitalReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results)
{ {
@@ -296,7 +329,7 @@ void digitalReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results)
/* Remote digital driver is not initialised */ /* Remote digital driver is not initialised */
sendString (SerOutPort, TRUE, importantMessage, sendString (SerOutPort, TRUE, importantMessage,
"\t\tdigital not intialised", Dummy, Dummy); "\t\tdigital not intialised", Dummy, Dummy);
return; return; /* Return without action */
} }
/* nrOfResults = 2 /* nrOfResults = 2
@@ -312,7 +345,7 @@ void digitalReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results)
/* Remote digital input is HIGH */ /* Remote digital input is HIGH */
remoteDioReadResult = TRUE; remoteDioReadResult = TRUE;
} }
xSemaphoreGive (remoteDigitalSemaphore); xSemaphoreGive (remoteDigitalSemaphore); /* Release digital Semaphore */
} }
@@ -342,13 +375,16 @@ void digitalReadAllResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results)
/* Incoming Results are from Mainboard */ /* Incoming Results are from Mainboard */
for (loopcnt = 0; loopcnt < NUMBER_OF_DI_MB; loopcnt++) for (loopcnt = 0; loopcnt < NUMBER_OF_DI_MB; loopcnt++)
{ {
/* Write incoming result to channel bit */
tempValue = (results[1] & (0x0000 | (1 << loopcnt))); tempValue = (results[1] & (0x0000 | (1 << loopcnt)));
if (tempValue == 0) if (tempValue == 0)
{ {
/* Received result is a LOW value - write to stat array */
remoteDigitalInputs[loopcnt] = FALSE; remoteDigitalInputs[loopcnt] = FALSE;
} }
else else
{ {
/* Received result is a HIGH value - write to stat array */
remoteDigitalInputs[loopcnt] = TRUE; remoteDigitalInputs[loopcnt] = TRUE;
} }
} }
@@ -359,18 +395,21 @@ void digitalReadAllResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results)
/* Incoming Results are from Extensionboard */ /* Incoming Results are from Extensionboard */
for (loopcnt = 0; loopcnt < NUMBER_OF_DI_EB; loopcnt++) for (loopcnt = 0; loopcnt < NUMBER_OF_DI_EB; loopcnt++)
{ {
/* Write incoming result to channel bit */
tempValue = (results[1] & (0x0000 | (1 << loopcnt))); tempValue = (results[1] & (0x0000 | (1 << loopcnt)));
if (tempValue == 0) if (tempValue == 0)
{ {
/* Received result is a LOW value - write to stat array */
remoteDigitalInputs[(loopcnt + NUMBER_OF_DI_MB)] = FALSE; remoteDigitalInputs[(loopcnt + NUMBER_OF_DI_MB)] = FALSE;
} }
else else
{ {
/* Received result is a HIGH value - write to stat array */
remoteDigitalInputs[(loopcnt + NUMBER_OF_DI_MB)] = TRUE; remoteDigitalInputs[(loopcnt + NUMBER_OF_DI_MB)] = TRUE;
} }
} }
} }
xSemaphoreGive (remoteDigitalSemaphore); xSemaphoreGive (remoteDigitalSemaphore); /* Release digital Semaphore */
} }
@@ -55,32 +55,137 @@ typedef enum
* Variable declarations. * Variable declarations.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
BOOLEAN remoteDigitalInputs[(NUMBER_OF_TOTAL_DI)]; BOOLEAN remoteDigitalInputs[(NUMBER_OF_TOTAL_DI)];
BOOLEAN remoteDigitalOutputs[(NUMBER_OF_TOTAL_DO)]; BOOLEAN remoteDigitalOutputs[(NUMBER_OF_TOTAL_DO)];
xSemaphoreHandle remoteDigitalSemaphore; xSemaphoreHandle remoteDigitalSemaphore; /* Prototype of digital Semaphore*/
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Function declarations. * Function declarations.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
/* ---------------------------------------------------------------------------
* Function: remoteDioInit
*
* Initialisation of the digital remote driver, creates and takes digital
* Semaphore.
*
* Parameters: void
*
* Return: void
* ---------------------------------------------------------------------------
*/
void remoteDioInit (void); void remoteDioInit (void);
/* ---------------------------------------------------------------------------
* Function: remoteDioWrite
*
* Sets or cleans a digital output on the remote device
*
* Parameters: UINT8 device - Number of the remote device
* UINT8 channel - Number of the effected remote channel
* BOOLEAN value - Value to be written
*
* Return: RESULT - Indicates the status of the write action
* ---------------------------------------------------------------------------
*/
RESULT remoteDioWrite (UINT8 device, UINT8 channel, BOOLEAN value); RESULT remoteDioWrite (UINT8 device, UINT8 channel, BOOLEAN value);
/* ---------------------------------------------------------------------------
* Function: remoteDioWriteAll
*
* Sets or cleans all digital outputs of a kind on the remote device
*
* Parameters: UINT8 device - Number of the remote device
* t_boardtype_digital board - Type of board (MB or EB)
* BOOLEAN value - Value to be written
*
* Return: RESULT - Indicates the status of the write action
* ---------------------------------------------------------------------------
*/
RESULT remoteDioWriteAll (UINT8 device, t_boardtype_digital board, BOOLEAN value); RESULT remoteDioWriteAll (UINT8 device, t_boardtype_digital board, BOOLEAN value);
/* ---------------------------------------------------------------------------
* Function: remoteDioRead
*
* reads from one remote digital input. If the result fails, the previous
* generated result will be returned.
*
* Parameters: UINT8 device - Number of the remote device
* UINT8 channel - Number of the effected remote channel
*
* Return: BOOLEAN - The read result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteDioRead (UINT8 device, INT32 channel); BOOLEAN remoteDioRead (UINT8 device, INT32 channel);
/* ---------------------------------------------------------------------------
* Function: remoteDioReadAll
*
* reads from all remote digital inputs. If the result fails, nothing happens
*
* Parameters: UINT8 device - Number of the remote device
* t_boardtype_digital board - Type of board (MB or EB)
*
* Return: void
* ---------------------------------------------------------------------------
*/
void remoteDioReadAll (UINT8 device, t_boardtype_digital board); void remoteDioReadAll (UINT8 device, t_boardtype_digital board);
/* ---------------------------------------------------------------------------
* Function: remoteDigitalSemaphoreRelease
*
* Is called as a result from the remote device to release the digital
* Semaphore. This call is the last statement within the remote procedure.
* It assures that the complete function is executed before the local
* software resumes working.
*
* Parameters: UINT8 requestNr - Number of the momentary request
* UINT8 nrOfResults - Indicates how many values are returned
* UINT32 *results - Result-Array of "NrOfResults"-size
*
* Return: void
* ---------------------------------------------------------------------------
*/
void remoteDigitalSemaphoreRelease (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void remoteDigitalSemaphoreRelease (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
/* ---------------------------------------------------------------------------
* Function: digitalReadResult
*
* Is called as a result from the remote device to transfer the read value.
* digitalReadResult stores the received value to a global variable.
*
* Parameters: UINT8 requestNr - Number of the momentary request
* UINT8 nrOfResults - Indicates how many values are returned
* UINT32 *results - Result-Array of "NrOfResults"-size
*
* Return: void
* ---------------------------------------------------------------------------
*/
void digitalReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void digitalReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
/* ---------------------------------------------------------------------------
* Function: digitalReadAllResult
*
* Is called as a result from the remote device to transfer the read value.
* digitalReadResult stores the received value to a global array.
*
* Parameters: UINT8 requestNr - Number of the momentary request
* UINT8 nrOfResults - Indicates how many values are returned
* UINT32 *results - Result-Array of "NrOfResults"-size
*
* Return: void
* ---------------------------------------------------------------------------
*/
void digitalReadAllResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void digitalReadAllResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
#endif /*DIGITAL_TEST_H_*/ #endif /*DIGITAL_TEST_H_*/
@@ -85,6 +85,7 @@ BOOLEAN makeHandshake (void)
} }
#endif #endif
UINT8 returnRemoteCalibrationStatus (INT32 correctionType) UINT8 returnRemoteCalibrationStatus (INT32 correctionType)
{ {
xSemaphoreTake(generalSemaphore, 0); xSemaphoreTake(generalSemaphore, 0);
@@ -16,13 +16,14 @@
* Creation. * Creation.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
#include "lpc23xx.h" #ifndef REMOTE_MISC_H_
#include "types.h" #define REMOTE_MISC_H_
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* System include files. * System include files.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
#include "lpc23xx.h"
#include "types.h"
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Application include files. * Application include files.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
@@ -67,7 +68,5 @@ UINT8 showRemoteCalibrationStatus (INT32 correctionType);
void digitalReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void digitalReadResult (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
#ifndef REMOTE_MISC_H_
#define REMOTE_MISC_H_
#endif /*REMOTE_MISC_H_*/ #endif /*REMOTE_MISC_H_*/
@@ -58,13 +58,64 @@ xSemaphoreHandle remoteRelaySemaphore;
* Function declarations. * Function declarations.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
/* ---------------------------------------------------------------------------
* Function: remoteRelayInit
*
* Initialisation of the relay remote driver, creates and takes relay
* Semaphore.
*
* Parameters: void
*
* Return: void
* ---------------------------------------------------------------------------
*/
void remoteRelayInit(void); void remoteRelayInit(void);
/* ---------------------------------------------------------------------------
* Function: remoteRelaySet
*
* Sets or cleans a relay output on the remote device
*
* Parameters: UINT8 device - Number of the remote device
* UINT8 channel - Number of the effected remote channel
* BOOLEAN value - Value to be written
*
* Return: RESULT - Indicates the status of the write action
* ---------------------------------------------------------------------------
*/
RESULT remoteRelaySet (UINT8 device, UINT8 channel, BOOLEAN value); RESULT remoteRelaySet (UINT8 device, UINT8 channel, BOOLEAN value);
/* ---------------------------------------------------------------------------
* Function: remoteRelayRead
*
* reads from one remote relay input. If the result fails, the previous
* generated result will be returned.
*
* Parameters: UINT8 device - Number of the remote device
* UINT8 channel - Number of the effected remote channel
*
* Return: BOOLEAN - The read result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteRelayRead (UINT8 device, UINT8 channel); BOOLEAN remoteRelayRead (UINT8 device, UINT8 channel);
/* ---------------------------------------------------------------------------
* Function: remoteRelaySetAll
*
* Sets or cleans all relay outputs on the remote device
*
* Parameters: UINT8 device - Number of the remote device
* UINT8 channel - Number of the effected remote channel
* BOOLEAN value - Value to be written
*
* Return: RESULT - Indicates the status of the write action
* ---------------------------------------------------------------------------
*/
RESULT remoteRelaySetAll (UINT8 device, t_boardtype_relay board, BOOLEAN value); RESULT remoteRelaySetAll (UINT8 device, t_boardtype_relay board, BOOLEAN value);
void remoteRelaySemaphoreRelease (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results); void remoteRelaySemaphoreRelease (UINT8 requestNr, UINT8 nrOfResults, UINT32 *results);
@@ -80,11 +80,11 @@ BOOLEAN remoteAnalogueLinetestMBExecute (void)
remoteAnalogueOutput = remoteAnalogueOutputTest_MB(); remoteAnalogueOutput = remoteAnalogueOutputTest_MB();
sendString (SerOutPort, TRUE, resultMessage, sendString (SerOutPort, TRUE, resultMessage,
"remote analogue output test: ", f_tab, BoolRestoStr(remoteAnalogueOutput)); "remote analogue output: ", f_tab, BoolRestoStr(remoteAnalogueOutput));
remoteAnalogueInput = remoteAnalogueInputTest_MB(); remoteAnalogueInput = remoteAnalogueInputTest_MB();
sendString (SerOutPort, TRUE, resultMessage, sendString (SerOutPort, TRUE, resultMessage,
"remote analogue input test: ", f_tab, BoolRestoStr(remoteAnalogueInput)); "remote analogue input: ", f_tab, BoolRestoStr(remoteAnalogueInput));
if ((remoteAnalogueOutput == TRUE) && (remoteAnalogueInput == TRUE)) if ((remoteAnalogueOutput == TRUE) && (remoteAnalogueInput == TRUE))
{ {
@@ -95,6 +95,9 @@ BOOLEAN remoteAnalogueLinetestMBExecute (void)
returnValue = FALSE; returnValue = FALSE;
} }
sendString (SerOutPort, TRUE, resultMessage,
"remote analogue test: ", f_tab, BoolRestoStr(remoteAnalogueInput));
return (returnValue); return (returnValue);
} }
@@ -53,16 +53,81 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
/* ---------------------------------------------------------------------------
* Function: remoteAnalogueLinetestMBExecute
*
* Main function to the analogue connectivity test of the main board
*
* Parameter: void
*
* Return: BOOLEAN - test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteAnalogueLinetestMBExecute (void); BOOLEAN remoteAnalogueLinetestMBExecute (void);
/* ---------------------------------------------------------------------------
* Function: remoteAnalogueLinetestEBExecute
*
* Main function to the analogue connectivity test of the extension board
*
* Parameter: void
*
* Return: BOOLEAN - test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteAnalogueLinetestEBExecute (void); BOOLEAN remoteAnalogueLinetestEBExecute (void);
/* ---------------------------------------------------------------------------
* Function: remoteAnalogueOutputTest_MB
*
* Analogue output test for test_item main board
*
* Parameter: void
*
* Return: BOOLEAN - test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteAnalogueOutputTest_MB (void); BOOLEAN remoteAnalogueOutputTest_MB (void);
/* ---------------------------------------------------------------------------
* Function: remoteAnalogueInputTest_MB
*
* Analogue input test for test_item main board
*
* Parameter: void
*
* Return: BOOLEAN - test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteAnalogueInputTest_MB (void); BOOLEAN remoteAnalogueInputTest_MB (void);
/* ---------------------------------------------------------------------------
* Function: remoteAnalogueOutputTest_EB
*
* Analogue output test for test_item extension board
*
* Parameter: void
*
* Return: BOOLEAN - test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteAnalogueOutputTest_EB (void); BOOLEAN remoteAnalogueOutputTest_EB (void);
/* ---------------------------------------------------------------------------
* Function: remoteAnalogueInputTest_EB
*
* Analogue input test for test_item extension board
*
* Parameter: void
*
* Return: BOOLEAN - test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteAnalogueInputTest_EB (void); BOOLEAN remoteAnalogueInputTest_EB (void);
@@ -69,53 +69,71 @@ BOOLEAN remoteDigitalLinetestMBExecute (void)
BOOLEAN remoteDigitalOutput; BOOLEAN remoteDigitalOutput;
BOOLEAN remoteDigitalInput; BOOLEAN remoteDigitalInput;
/* Call mainboard digital output test and print out result afterwards */
remoteDigitalOutput = remoteDigitalOutputTest_MB(); remoteDigitalOutput = remoteDigitalOutputTest_MB();
sendString (SerOutPort, TRUE, resultMessage, sendString (SerOutPort, TRUE, resultMessage,
"remote digital_mb output test: ", f_tab, BoolRestoStr(remoteDigitalOutput)); "remote digital_mb output: ", f_tab, BoolRestoStr(remoteDigitalOutput));
/* Call mainboard digital input test and print out result afterwards */
remoteDigitalInput = remoteDigitalInputTest_MB(); remoteDigitalInput = remoteDigitalInputTest_MB();
sendString (SerOutPort, TRUE, resultMessage, sendString (SerOutPort, TRUE, resultMessage,
"remote digital_mb input test: ", f_tab, BoolRestoStr(remoteDigitalInput)); "remote digital_mb input: ", f_tab, BoolRestoStr(remoteDigitalInput));
/* Calculate test result */
if ((remoteDigitalOutput == TRUE) && (remoteDigitalInput == TRUE)) if ((remoteDigitalOutput == TRUE) && (remoteDigitalInput == TRUE))
{ {
/* Test is passed */
returnValue = TRUE; returnValue = TRUE;
} }
else else
{ {
/* Test is passed */
returnValue = FALSE; returnValue = FALSE;
} }
sendString (SerOutPort, TRUE, resultMessage,
"remote digital_mb test: ", f_tab, BoolRestoStr(remoteDigitalInput));
return (returnValue); return (returnValue);
} }
BOOLEAN remoteDigitalLinetestEBExecute (void) BOOLEAN remoteDigitalLinetestEBExecute (void)
{ {
// \MARK NEW PINSETTINGS FOR TESTER (2) // \MARK NEW PINSETTINGS FOR TESTER (2)
#if (PINSET_TESTER == 2) #if (PINSET_TESTER == 2)
/* Extensionboard Test is available only on the specified test device */
BOOLEAN returnValue; BOOLEAN returnValue;
BOOLEAN remoteDigitalOutput; BOOLEAN remoteDigitalOutput;
BOOLEAN remoteDigitalInput; BOOLEAN remoteDigitalInput;
/* Call extensionboard digital output test and print result afterwards */
remoteDigitalOutput = remoteDigitalOutputTest_EB(); remoteDigitalOutput = remoteDigitalOutputTest_EB();
sendString (SerOutPort, TRUE, resultMessage, sendString (SerOutPort, TRUE, resultMessage,
"remote digital_eb output test: ", f_tab, BoolRestoStr(remoteDigitalOutput)); "remote digital_eb output test: ", f_tab, BoolRestoStr(remoteDigitalOutput));
/* Call extensionboard digital input test and print result afterwards */
remoteDigitalInput = remoteDigitalInputTest_EB(); remoteDigitalInput = remoteDigitalInputTest_EB();
sendString (SerOutPort, TRUE, resultMessage, sendString (SerOutPort, TRUE, resultMessage,
"remote digital_eb input test: ", f_tab, BoolRestoStr(remoteDigitalInput)); "remote digital_eb input test: ", f_tab, BoolRestoStr(remoteDigitalInput));
/* Calculate test result */
if ((remoteDigitalOutput == TRUE) && (remoteDigitalInput == TRUE)) if ((remoteDigitalOutput == TRUE) && (remoteDigitalInput == TRUE))
{ {
/* Test is passed */
returnValue = TRUE; returnValue = TRUE;
} }
else else
{ {
/* Test is failed */
returnValue = FALSE; returnValue = FALSE;
} }
return (returnValue); return (returnValue);
#else #else
/* If other board than specific tester, printf out "test unavailable" text */
sendString (SerOutPort, TRUE, importantMessage, sendString (SerOutPort, TRUE, importantMessage,
"Extension Board test not available on this device", Dummy, Dummy); "Extension Board test not available on this device", Dummy, Dummy);
@@ -136,11 +154,13 @@ BOOLEAN remoteDigitalOutputTest_MB (void)
/* Reset all remote digital outputs to LOW/OFF */ /* Reset all remote digital outputs to LOW/OFF */
remoteDioWriteAll(remoteDeviceNumber, digital_mb, FALSE); remoteDioWriteAll(remoteDeviceNumber, digital_mb, FALSE);
vTaskDelay (200); vTaskDelay (500); /* Wait for reset remote outputs*/
/* Test each channel individually within a loop
* Loop-condition is the number of digital outputs on the test item
*/
for (channelcnt = 0; channelcnt < NUMBER_OF_DO_MB; channelcnt++) for (channelcnt = 0; channelcnt < NUMBER_OF_DO_MB; channelcnt++)
{ {
/* Read remote digital channel value for LOW test */ /* Read remote digital channel value for LOW test */
if (dioRead(thisDeviceNumber, channelcnt) == FALSE) if (dioRead(thisDeviceNumber, channelcnt) == FALSE)
{ {
@@ -192,11 +212,12 @@ BOOLEAN remoteDigitalOutputTest_MB (void)
} }
} }
/* Re-set remote digital output to LOW */
remoteDioWrite(remoteDeviceNumber, channelcnt, FALSE); remoteDioWrite(remoteDeviceNumber, channelcnt, FALSE);
/* Message out Test Results */ /* Message out Test Results */
sendString (SerOutPort, TRUE, testMessage, sendString (SerOutPort, TRUE, testMessage,
"\tLinetest for Digital Input ", ItoDStr(channelcnt), ": "); "\tLinetest for Digital Output (MB) ", ItoDStr(channelcnt), ": ");
sendString (SerOutPort, FALSE, testMessage, sendString (SerOutPort, FALSE, testMessage,
" ", Dummy, BoolRestoStr (Low_Test)); " ", Dummy, BoolRestoStr (Low_Test));
sendString (SerOutPort, FALSE, testMessage, sendString (SerOutPort, FALSE, testMessage,
@@ -205,13 +226,16 @@ BOOLEAN remoteDigitalOutputTest_MB (void)
" ", Dummy, BoolRestoStr (High_Test)); " ", Dummy, BoolRestoStr (High_Test));
vTaskDelay (50); vTaskDelay (50);
/* If one of the individual tests fails, calculate a negative
* over-all test result
*/
if ((Low_Test == FALSE) || (High_Test == FALSE) || (AllOther_Test == FALSE)) if ((Low_Test == FALSE) || (High_Test == FALSE) || (AllOther_Test == FALSE))
{ {
returnResult = FALSE; returnResult = FALSE;
} }
} }
return (returnResult); return (returnResult); /* Return test result to caller */
} }
BOOLEAN remoteDigitalInputTest_MB (void) BOOLEAN remoteDigitalInputTest_MB (void)
@@ -225,8 +249,11 @@ BOOLEAN remoteDigitalInputTest_MB (void)
BOOLEAN AllOther_Test = TRUE; BOOLEAN AllOther_Test = TRUE;
dioClean(); /* Clean local digital outputs */ dioClean(); /* Clean local digital outputs */
vTaskDelay (500); vTaskDelay (500); /* Wait for local outputs */
/* Test each channel individually within a loop
* Loop-condition is the number of digital inputs on the test item
*/
for (channelcnt = 0; channelcnt < NUMBER_OF_DI_MB; channelcnt++) for (channelcnt = 0; channelcnt < NUMBER_OF_DI_MB; channelcnt++)
{ {
if (remoteDioRead(remoteDeviceNumber, channelcnt) == FALSE) if (remoteDioRead(remoteDeviceNumber, channelcnt) == FALSE)
@@ -239,21 +266,20 @@ BOOLEAN remoteDigitalInputTest_MB (void)
/* read back a HIGH Value, which is incorrect - LOW test failed */ /* read back a HIGH Value, which is incorrect - LOW test failed */
Low_Test = FALSE; Low_Test = FALSE;
} }
vTaskDelay (200); /* Write local output to HIGH state */
dioWrite(thisDeviceNumber, channelcnt, TRUE); dioWrite(thisDeviceNumber, channelcnt, TRUE);
vTaskDelay(200); vTaskDelay(200); /* Wait for local output */
if (remoteDioRead(remoteDeviceNumber, channelcnt) == TRUE) if (remoteDioRead(remoteDeviceNumber, channelcnt) == TRUE)
{ {
/* Read back a HIGH Value, which is correct - HIGH test passed */ /* Read back a HIGH Value, which is correct - HIGH test passed */
vTaskDelay(500);
High_Test = TRUE; High_Test = TRUE;
} }
else else
{ {
/* read back a LOW Value, which is incorrect - HIGH test failed */ /* read back a LOW Value, which is incorrect - HIGH test failed */
vTaskDelay(500);
High_Test = FALSE; High_Test = FALSE;
} }
@@ -286,7 +312,7 @@ BOOLEAN remoteDigitalInputTest_MB (void)
/* Message out Test Results */ /* Message out Test Results */
sendString (SerOutPort, TRUE, testMessage, sendString (SerOutPort, TRUE, testMessage,
"\tLinetest for Digital Input ", ItoDStr(channelcnt), ": "); "\tLinetest for Digital Input (MB) ", ItoDStr(channelcnt), ": ");
sendString (SerOutPort, FALSE, testMessage, sendString (SerOutPort, FALSE, testMessage,
" ", Dummy, BoolRestoStr (Low_Test)); " ", Dummy, BoolRestoStr (Low_Test));
sendString (SerOutPort, FALSE, testMessage, sendString (SerOutPort, FALSE, testMessage,
@@ -295,13 +321,16 @@ BOOLEAN remoteDigitalInputTest_MB (void)
" ", Dummy, BoolRestoStr (High_Test)); " ", Dummy, BoolRestoStr (High_Test));
vTaskDelay (50); vTaskDelay (50);
/* If one of the individual tests fails, calculate a negative
* over-all test result
*/
if ((Low_Test == FALSE) || (High_Test == FALSE) || (AllOther_Test == FALSE)) if ((Low_Test == FALSE) || (High_Test == FALSE) || (AllOther_Test == FALSE))
{ {
returnResult = FALSE; returnResult = FALSE;
} }
} }
return (returnResult); return (returnResult); /* Return test result */
} }
@@ -317,6 +346,7 @@ BOOLEAN remoteDigitalOutputTest_EB (void)
// \MARK NEW PINSETTINGS FOR TESTER (2) // \MARK NEW PINSETTINGS FOR TESTER (2)
#if (PINSET_TESTER == 2) #if (PINSET_TESTER == 2)
/* Necessary due to compiling on alternative boards */
dio_inMuxEn (TRUE); /* Switch dio to Extension Board*/ dio_inMuxEn (TRUE); /* Switch dio to Extension Board*/
#endif #endif
@@ -324,6 +354,14 @@ BOOLEAN remoteDigitalOutputTest_EB (void)
remoteDioWriteAll(remoteDeviceNumber, digital_eb, FALSE); remoteDioWriteAll(remoteDeviceNumber, digital_eb, FALSE);
vTaskDelay (200); vTaskDelay (200);
/* Test each channel individually within a loop
* Loop-condition is the total number of digital outputs on the test item
* The remote digital write/read function counts up to 12 (8 MB + 4 EB),
* the local write/read only to 8. The 4 extension board connections
* must be switche manually. That is why the loop counting starts with
* the number of the mainboard outputs, which represents the first
* extensionboard output.
*/
for (channelcnt = NUMBER_OF_DO_MB; channelcnt < NUMBER_OF_TOTAL_DO; channelcnt++) for (channelcnt = NUMBER_OF_DO_MB; channelcnt < NUMBER_OF_TOTAL_DO; channelcnt++)
{ {
if (dioRead(thisDeviceNumber, (channelcnt - NUMBER_OF_DO_MB)) == FALSE) if (dioRead(thisDeviceNumber, (channelcnt - NUMBER_OF_DO_MB)) == FALSE)
@@ -376,7 +414,7 @@ BOOLEAN remoteDigitalOutputTest_EB (void)
} }
/* Message out Test Results */ /* Message out Test Results */
sendString (SerOutPort, TRUE, testMessage, sendString (SerOutPort, TRUE, testMessage,
"\tLinetest for Digital Input ", ItoDStr(channelcnt), ": "); "\tLinetest for Digital Ouput(EB) ", ItoDStr(channelcnt), ": ");
sendString (SerOutPort, FALSE, testMessage, sendString (SerOutPort, FALSE, testMessage,
" ", Dummy, BoolRestoStr (Low_Test)); " ", Dummy, BoolRestoStr (Low_Test));
sendString (SerOutPort, FALSE, testMessage, sendString (SerOutPort, FALSE, testMessage,
@@ -385,6 +423,9 @@ BOOLEAN remoteDigitalOutputTest_EB (void)
" ", Dummy, BoolRestoStr (High_Test)); " ", Dummy, BoolRestoStr (High_Test));
vTaskDelay (50); vTaskDelay (50);
/* If one of the individual tests fails, calculate a negative
* over-all test result
*/
if ((Low_Test == FALSE) || (High_Test == FALSE) || (AllOther_Test == FALSE)) if ((Low_Test == FALSE) || (High_Test == FALSE) || (AllOther_Test == FALSE))
{ {
returnResult = FALSE; returnResult = FALSE;
@@ -393,10 +434,11 @@ BOOLEAN remoteDigitalOutputTest_EB (void)
// \MARK NEW PINSETTINGS FOR TESTER (2) // \MARK NEW PINSETTINGS FOR TESTER (2)
#if (PINSET_TESTER == 2) #if (PINSET_TESTER == 2)
/* Necessary due to compiling on alternative boards */
dio_inMuxEn (FALSE); /* Switch dio back to main Board*/ dio_inMuxEn (FALSE); /* Switch dio back to main Board*/
#endif #endif
return (returnResult); return (returnResult); /* Return test result */
} }
@@ -412,12 +454,21 @@ BOOLEAN remoteDigitalInputTest_EB (void)
// \MARK NEW PINSETTINGS FOR TESTER (2) // \MARK NEW PINSETTINGS FOR TESTER (2)
#if (PINSET_TESTER == 2) #if (PINSET_TESTER == 2)
/* Necessary due to compiling on alternative boards */
dio_outMuxEn (TRUE); /* Switch dio to Extension Board*/ dio_outMuxEn (TRUE); /* Switch dio to Extension Board*/
#endif #endif
dioClean(); /* Clean local digital outputs */ dioClean(); /* Clean local digital outputs */
vTaskDelay (500); vTaskDelay (500); /* assure that cleaning is done */
/* Test each channel individually within a loop
* Loop-condition is the number of digital inputs available on the
* extension board. The remote digital write/read function counts up
* to 12 (8 MB + 4 EB), the local write/read only to 8. The 4 extension
* board connections must be switched manually (first 4 local inputs).
* This is why the remote channel number is added with the number of
* the digital inputs available on the mainboard.
*/
for (channelcnt = 0; channelcnt < NUMBER_OF_DI_EB; channelcnt++) for (channelcnt = 0; channelcnt < NUMBER_OF_DI_EB; channelcnt++)
{ {
if (remoteDioRead(remoteDeviceNumber, (channelcnt + NUMBER_OF_DI_MB)) == FALSE) if (remoteDioRead(remoteDeviceNumber, (channelcnt + NUMBER_OF_DI_MB)) == FALSE)
@@ -431,8 +482,9 @@ BOOLEAN remoteDigitalInputTest_EB (void)
Low_Test = FALSE; Low_Test = FALSE;
} }
vTaskDelay (200); /* Set local digital output to HIGH stat */
dioWrite(thisDeviceNumber, channelcnt, TRUE); dioWrite(thisDeviceNumber, channelcnt, TRUE);
vTaskDelay(200); /* Wait for command is finished */
if (remoteDioRead(remoteDeviceNumber, (channelcnt + NUMBER_OF_DI_MB)) == TRUE) if (remoteDioRead(remoteDeviceNumber, (channelcnt + NUMBER_OF_DI_MB)) == TRUE)
{ {
@@ -445,8 +497,9 @@ BOOLEAN remoteDigitalInputTest_EB (void)
High_Test = FALSE; High_Test = FALSE;
} }
/* Read all remote digital inputs */
remoteDioReadAll(remoteDeviceNumber, digital_eb); remoteDioReadAll(remoteDeviceNumber, digital_eb);
vTaskDelay (200); vTaskDelay (200); /* Wait for command is finished */
for (loopcnt = 0; loopcnt < NUMBER_OF_DI_EB; loopcnt++) for (loopcnt = 0; loopcnt < NUMBER_OF_DI_EB; loopcnt++)
{ {
@@ -474,7 +527,7 @@ BOOLEAN remoteDigitalInputTest_EB (void)
/* Message out Test Results */ /* Message out Test Results */
sendString (SerOutPort, TRUE, testMessage, sendString (SerOutPort, TRUE, testMessage,
"\tLinetest for Digital Input ", ItoDStr(channelcnt), ": "); "\tLinetest for Digital Input (EB) ", ItoDStr(channelcnt), ": ");
sendString (SerOutPort, FALSE, testMessage, sendString (SerOutPort, FALSE, testMessage,
" ", Dummy, BoolRestoStr (Low_Test)); " ", Dummy, BoolRestoStr (Low_Test));
sendString (SerOutPort, FALSE, testMessage, sendString (SerOutPort, FALSE, testMessage,
@@ -483,6 +536,9 @@ BOOLEAN remoteDigitalInputTest_EB (void)
" ", Dummy, BoolRestoStr (High_Test)); " ", Dummy, BoolRestoStr (High_Test));
vTaskDelay (50); vTaskDelay (50);
/* If one of the individual tests fails, calculate a negative
* over-all test result
*/
if ((Low_Test == FALSE) || (High_Test == FALSE) || (AllOther_Test == FALSE)) if ((Low_Test == FALSE) || (High_Test == FALSE) || (AllOther_Test == FALSE))
{ {
returnResult = FALSE; returnResult = FALSE;
@@ -491,9 +547,10 @@ BOOLEAN remoteDigitalInputTest_EB (void)
// \MARK NEW PINSETTINGS FOR TESTER (2) // \MARK NEW PINSETTINGS FOR TESTER (2)
#if (PINSET_TESTER == 2) #if (PINSET_TESTER == 2)
/* Necessary due to compiling on alternative boards */
dio_outMuxEn (FALSE); /* Switch dio back to main Board*/ dio_outMuxEn (FALSE); /* Switch dio back to main Board*/
#endif #endif
return (returnResult); return (returnResult); /* Return test result */
} }
@@ -52,10 +52,81 @@
* Function declarations. * Function declarations.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
/* ---------------------------------------------------------------------------
* Function: remoteDigitalLinetestMBExecute
*
* Main function to the remote mainboard digital in-/output test
*
* Parameter: void
*
* Return: BOOLEAN - Test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteDigitalLinetestMBExecute (void); BOOLEAN remoteDigitalLinetestMBExecute (void);
/* ---------------------------------------------------------------------------
* Function: remoteDigitalLinetestEBExecute
*
* Main function to the remote extensionboard digital in-/output test
*
* Parameter: void
*
* Return: BOOLEAN - Test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteDigitalLinetestEBExecute (void); BOOLEAN remoteDigitalLinetestEBExecute (void);
/* ---------------------------------------------------------------------------
* Function: remoteDigitalOutputTest_MB
*
* Function to the remote mainboard digital outputs
*
* Parameter: void
*
* Return: BOOLEAN - Test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteDigitalOutputTest_MB (void); BOOLEAN remoteDigitalOutputTest_MB (void);
/* ---------------------------------------------------------------------------
* Function: remoteDigitalInputTest_MB
*
* Function to the remote mainboard digital inputs
*
* Parameter: void
*
* Return: BOOLEAN - Test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteDigitalInputTest_MB (void); BOOLEAN remoteDigitalInputTest_MB (void);
/* ---------------------------------------------------------------------------
* Function: remoteDigitalOutputTest_EB
*
* Function to the remote extensionboard digital outputs
*
* Parameter: void
*
* Return: BOOLEAN - Test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteDigitalOutputTest_EB (void); BOOLEAN remoteDigitalOutputTest_EB (void);
/* ---------------------------------------------------------------------------
* Function: remoteDigitalInputTest_EB
*
* Function to the remote extensionboard digital inputs
*
* Parameter: void
*
* Return: BOOLEAN - Test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteDigitalInputTest_EB (void);
#endif /*TEST_DIGITAL_H_*/ #endif /*TEST_DIGITAL_H_*/
@@ -50,6 +50,16 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
/* ---------------------------------------------------------------------------
* Function: remoteLEDTestMBexecute
*
* LED test for all LEDS available on CPU and main board
*
* Parameter: void
*
* Return: BOOLEAN - test result
* ---------------------------------------------------------------------------
*/
BOOLEAN remoteLEDTestMBexecute (void); BOOLEAN remoteLEDTestMBexecute (void);
+1 -1
View File
@@ -15,7 +15,7 @@
* Contains some handy Functions to convert different DataTypes to Strings * Contains some handy Functions to convert different DataTypes to Strings
* *
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, Feb 11, 2008, MMi * Version(s): 0.1, Apr 11, 2008, MMi
* Creation. * Creation.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
+1 -1
View File
@@ -13,7 +13,7 @@
* Description: * Description:
* Headerfile for SerOut.c * Headerfile for SerOut.c
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, Feb 11, 2008, MMi * Version(s): 0.1, Apr 11, 2008, MMi
* Creation. * Creation.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
+2
View File
@@ -14,6 +14,8 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, 28-11-2007, fvds. * Version(s): 0.1, 28-11-2007, fvds.
* Creation. * Creation.
*
* Calibration updates by MMi
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
+2
View File
@@ -14,6 +14,8 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, 10-09-2007, Marcel Mulder. * Version(s): 0.1, 10-09-2007, Marcel Mulder.
* Creation. * Creation.
*
* Calibration updates by MMi
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
#ifndef __ADC_H__ #ifndef __ADC_H__
+1 -1
View File
@@ -12,7 +12,7 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Description: * Description:
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, Feb 11, 2008, MMi * Version(s): 0.1, Dez 11, 2008, MMi
* Creation. * Creation.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
+1 -1
View File
@@ -12,7 +12,7 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Description: * Description:
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, Feb 11, 2008, MMi * Version(s): 0.1, Dez 11, 2008, MMi
* Creation. * Creation.
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
+2
View File
@@ -14,6 +14,8 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, 28-11-2007, fvds. * Version(s): 0.1, 28-11-2007, fvds.
* Creation. * Creation.
*
* Calibration updates by MMi
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
+2
View File
@@ -14,6 +14,8 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, 10-09-2007, Marcel Mulder. * Version(s): 0.1, 10-09-2007, Marcel Mulder.
* Creation. * Creation.
*
* Calibration updates by MMi
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
#ifndef __DAC_H__ #ifndef __DAC_H__
+4 -2
View File
@@ -390,7 +390,8 @@ BOOLEAN dioRead(UINT8 device, /**< 0 = Self, 1..32 = Remote device */
if (*gpioRegister & inputPins[channel].pinMask) if (*gpioRegister & inputPins[channel].pinMask)
{ {
Result = FALSE; Result = FALSE;
} else }
else
{ {
Result = TRUE; Result = TRUE;
} }
@@ -456,7 +457,8 @@ BOOLEAN data)
+ CLR_OFFSET); + CLR_OFFSET);
*gpioRegister = outputPins[channel].pinMask; *gpioRegister = outputPins[channel].pinMask;
} }
} else }
else
{ {
bpecWriteDioValue(device, channel, data); bpecWriteDioValue(device, channel, data);
} }
+2
View File
@@ -14,6 +14,8 @@
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
* Version(s): 0.1, 28-11-2007, fvds. * Version(s): 0.1, 28-11-2007, fvds.
* Creation. * Creation.
*
* Updates by MMi
* --------------------------------------------------------------------------- * ---------------------------------------------------------------------------
*/ */
Binary file not shown.
@@ -40,6 +40,18 @@ namespace QUA_2475_designtest
{ {
public partial class mainWindow public partial class mainWindow
{ {
private void remoteRTCset()
{
string sendString;
sendString = String.Format("setrtc 2 {0} {1}\r", DateTime.Now.ToString("MMddHHmm"), DateTime.Now.ToString("yyyy"));
com1.Write(sendString);
}
private void calibrateAnalogue()
{
com1.Write("cslave 4\r");
}
private void T_MasterInput_TextChanged(object sender, EventArgs e) private void T_MasterInput_TextChanged(object sender, EventArgs e)
@@ -81,25 +93,38 @@ namespace QUA_2475_designtest
else else
{ {
/* Calling Function is in same Thread */ /* Calling Function is in same Thread */
try
{
/* Search for Text fragments in Input String */
if (text.LastIndexOf("PASSED") != -1)
{
/* "PASSED" indecates that Device successfully
* finished a Test Script or Routine
*/
activeTest = false;
TestResult[actualTest] = true;
TestIsPassed(actualTest);
}
if (text.LastIndexOf("FAILED") != -1)
{
/* "FAILED" indecates that Device finished
* a Test Script or Routine with Errors
*/
activeTest = false;
TestResult[actualTest] = false;
TestIsFailed(actualTest);
}
if (text.LastIndexOf("CALIBRATION PART FINISHED") != -1)
{
activeTest = false;
TestResult[actualTest] = true;
CalibrationFinished();
}
/* Search for Text fragments in Input String */
if (text.LastIndexOf("test: PASSED") != -1)
{
/* "test: PASSED" indecates that Device successfully
* finished a Test Script or Routine
*/
activeTest = false;
TestResult[actualTest] = true;
TestIsPassed(actualTest);
} }
if (text.LastIndexOf("test: FAILED") != -1) catch
{ {
/* "test: FAILED" indecates that Device finished
* a Test Script or Routine with Errors
*/
activeTest = false; activeTest = false;
TestResult[actualTest] = false;
TestIsFailed(actualTest);
} }
} }
} }
@@ -160,9 +185,9 @@ namespace QUA_2475_designtest
* corresponding Test and send the String afterwards * corresponding Test and send the String afterwards
* to CehckForKeyword to find specific Keyword * to CehckForKeyword to find specific Keyword
*/ */
CheckForSlaveKeyword(new string(buffer)); // CheckForSlaveKeyword(new string(buffer));
//TestMessage[actualTest] += new string(buffer); TestMessage[actualTest] += new string(buffer);
//CheckForSlaveKeyword(TestMessage[actualTest]); CheckForSlaveKeyword(TestMessage[actualTest]);
} }
nrOfBytes = com1.BytesToRead; /* Actualise Inputlength*/ nrOfBytes = com1.BytesToRead; /* Actualise Inputlength*/
} }
@@ -50,7 +50,7 @@ namespace QUA_2475_designtest
Thread TestTimeoutThread; /* Test Timeout Thread */ Thread TestTimeoutThread; /* Test Timeout Thread */
/* INTEGER DEFINITION */ /* INTEGER DEFINITION */
const int NrOfTests = 15; /* Indicates number of single Test */ const int NrOfTests = 23; /* Indicates number of single Test */
uint actualTest = 0; /* Indicates number of actual Test */ uint actualTest = 0; /* Indicates number of actual Test */
uint TotalTestNumber = 1; /* Number of total Tests */ uint TotalTestNumber = 1; /* Number of total Tests */
uint TotalPassedNumber = 1; /* Number of passed Tests */ uint TotalPassedNumber = 1; /* Number of passed Tests */
@@ -61,6 +61,10 @@ namespace QUA_2475_designtest
private bool Master_receiveMessages = true; /* Allow COM2 to read */ private bool Master_receiveMessages = true; /* Allow COM2 to read */
private bool activeTest = false; /* Indicates an active Test */ private bool activeTest = false; /* Indicates an active Test */
private bool activeAutomatictest = false; /* autoTest is active */ private bool activeAutomatictest = false; /* autoTest is active */
private bool AllTestResult; /* Shows the autoTest Result */
private bool setRTC = false;
/* ARRAY DEFINITION */ /* ARRAY DEFINITION */
/* Array of all available Textboxes for Tests */ /* Array of all available Textboxes for Tests */
@@ -71,6 +75,10 @@ namespace QUA_2475_designtest
public string[] Testfiles = new string[NrOfTests]; public string[] Testfiles = new string[NrOfTests];
/* Array to contain each Test Result */ /* Array to contain each Test Result */
public bool[] TestResult = new bool[NrOfTests]; public bool[] TestResult = new bool[NrOfTests];
/* Array to enable individual tests */
public bool[] ActivateTest = new bool[NrOfTests];
/* Array for all test messages of single Test */
public string[] TestMessage = new String[NrOfTests];
private string MasterInputString; /* bound to T_MasterInput */ private string MasterInputString; /* bound to T_MasterInput */
@@ -81,45 +89,58 @@ namespace QUA_2475_designtest
*/ */
public enum TestType public enum TestType
{ {
MB_LED = 0, VCC = 0,
MB_EEPROM = 1, VDDAT = 1,
ETH1 = 2, VBAT = 2,
ETH0 = 3, VCORE = 3,
CF = 4, TEMP = 4,
USB = 5, REVNUM = 5,
MB_DIO = 6, LED_MB = 6,
MB_AIO = 7, EEPROM_MB = 7,
MB_RLY = 8, ETH0 = 8,
CAN = 9, ETH1 = 9,
EB_LED = 10, USB = 10,
EB_EEPROM = 11, DIO_MB = 11,
EB_DIO = 12, AIO_MB = 12,
EB_AIO = 13, RLY_MB = 13,
EB_RLY = 14 LED_EB = 14,
EEPROM_EB = 15,
DIO_EB = 16,
AIO_EB = 17,
RLY_EB = 18,
CAL_AOMB = 19,
CAL_AIMB = 20,
CAL_AOEB = 21,
CAL_AIEB = 22
}; };
public void initialise() public void initialise()
{ {
com1.PortName = "COM1"; /* Bind com1 to COM1 */ com1.PortName = "COM9"; /* Bind com1 to COM1 */
com1.Open(); /* Open com1 */ com1.Open(); /* Open com1 */
com1.BaudRate = 115200; /* Set com1 Baudrate */ com1.BaudRate = 115200; /* Set com1 Baudrate */
/* Capture corresponding Textboxes to TextBox Array */ /* Capture corresponding Textboxes to TextBox Array */
TestTextBoxes[(int)TestType.MB_LED] = T_test_MB_LED; TestTextBoxes[(int)TestType.VCC] = T_test_VCC;
TestTextBoxes[(int)TestType.MB_EEPROM] = T_test_MB_EEPROM; TestTextBoxes[(int)TestType.VDDAT] = T_test_VDDAT;
TestTextBoxes[(int)TestType.ETH1] = T_test_eth1; TestTextBoxes[(int)TestType.VBAT] = T_test_VBAT;
TestTextBoxes[(int)TestType.VCORE] = T_test_VCORE;
TestTextBoxes[(int)TestType.TEMP] = T_test_TEMP;
TestTextBoxes[(int)TestType.REVNUM] = T_test_REVNUM;
TestTextBoxes[(int)TestType.LED_MB] = T_test_MB_LED;
TestTextBoxes[(int)TestType.EEPROM_MB] = T_test_MB_EEPROM;
TestTextBoxes[(int)TestType.ETH0] = T_test_eth0; TestTextBoxes[(int)TestType.ETH0] = T_test_eth0;
TestTextBoxes[(int)TestType.CF] = T_test_CF; TestTextBoxes[(int)TestType.ETH1] = T_test_eth1;
TestTextBoxes[(int)TestType.USB] = T_test_USB; TestTextBoxes[(int)TestType.USB] = T_test_USB;
TestTextBoxes[(int)TestType.MB_DIO] = T_test_MB_DIO; TestTextBoxes[(int)TestType.DIO_MB] = T_test_MB_DIO;
TestTextBoxes[(int)TestType.MB_AIO] = T_test_MB_AIO; TestTextBoxes[(int)TestType.AIO_MB] = T_test_MB_AIO;
TestTextBoxes[(int)TestType.MB_RLY] = T_test_MB_RLY; TestTextBoxes[(int)TestType.RLY_MB] = T_test_MB_RLY;
TestTextBoxes[(int)TestType.CAN] = T_test_CAN; TestTextBoxes[(int)TestType.LED_EB] = T_test_EB_LED;
TestTextBoxes[(int)TestType.EB_LED] = T_test_EB_LED; TestTextBoxes[(int)TestType.EEPROM_EB] = T_test_EB_EEPROM;
TestTextBoxes[(int)TestType.EB_EEPROM] = T_test_EB_EEPROM; TestTextBoxes[(int)TestType.DIO_EB] = T_test_EB_DIO;
TestTextBoxes[(int)TestType.EB_DIO] = T_test_EB_DIO; TestTextBoxes[(int)TestType.AIO_EB] = T_test_EB_AIO;
TestTextBoxes[(int)TestType.EB_AIO] = T_test_EB_AIO; TestTextBoxes[(int)TestType.RLY_EB] = T_test_EB_RLY;
TestTextBoxes[(int)TestType.EB_RLY] = T_test_EB_RLY;
/* Reset all Test Results */ /* Reset all Test Results */
TestResult[0] = false; TestResult[0] = false;
@@ -137,28 +158,48 @@ namespace QUA_2475_designtest
TestResult[12] = false; TestResult[12] = false;
TestResult[13] = false; TestResult[13] = false;
TestResult[14] = false; TestResult[14] = false;
TestResult[15] = false;
TestResult[16] = false;
TestResult[17] = false;
TestResult[18] = false;
TestResult[19] = false;
TestResult[20] = false;
TestResult[21] = false;
TestResult[22] = false;
/* Define Commands (path and filename) for test-script calls */ /* Define Commands (path and filename) for test-script calls */
TestCallCommands[0] = "ledtest 2\r"; TestCallCommands[0] = "test_vcc 2\r";
TestCallCommands[1] = "eeprom 2\r"; TestCallCommands[1] = "test_vddat 2\r";
TestCallCommands[2] = "\r"; TestCallCommands[2] = "test_vbat 2\r";
TestCallCommands[3] = "\r"; TestCallCommands[3] = "test_vcore 2\r";
TestCallCommands[4] = "\r"; TestCallCommands[4] = "test_temp 2\r";
TestCallCommands[5] = "\r"; TestCallCommands[5] = "test_revnum 2\r";
TestCallCommands[6] = "dio 2\r"; TestCallCommands[6] = "test_led 2 0\r";
TestCallCommands[7] = "\r"; TestCallCommands[7] = "test_eeprom 2 0\r";
TestCallCommands[8] = "\r"; TestCallCommands[8] = "test_eth 2 0\r";
TestCallCommands[9] = "\r"; TestCallCommands[9] = "test_eth 2 1\r";
TestCallCommands[10] = "\r"; TestCallCommands[10] = "test_usb 2\r";
TestCallCommands[11] = "\r"; TestCallCommands[11] = "test_dio 2 0\r";
TestCallCommands[12] = "\r"; TestCallCommands[12] = "test_aio 2 0\r";
TestCallCommands[13] = "\r"; TestCallCommands[13] = "test_rly 2 0\r";
TestCallCommands[14] = "\r"; TestCallCommands[14] = "test_led 2 1\r";
TestCallCommands[15] = "test_eeprom 2 1\r";
TestCallCommands[16] = "test_dio 2 1\r";
TestCallCommands[17] = "test_aio 2 1\r";
TestCallCommands[18] = "test_rly 2 1\r";
TestCallCommands[19] = "cslave 0\r";
TestCallCommands[20] = "cslave 1\r";
TestCallCommands[21] = "cslave 2\r";
TestCallCommands[22] = "cslave 3\r";
/* Define and start com1 reading Thread */ /* Define and start com1 reading Thread */
com1GetMessage = new Thread(new ThreadStart(com1_DataReceived)); com1GetMessage = new Thread(new ThreadStart(com1_DataReceived));
com1GetMessage.Start(); com1GetMessage.Start();
} }
} }
} }

Some files were not shown because too many files have changed in this diff Show More